js获取给定月份的N个月后的日期

1.在讲js获取给定月份的N个月后的日期之前,小颖先给大家讲下getFullYear()、getYear()的区别。

①getYear()

            var d = new Date()
            console.log(d.getYear());

打印结果为:116

小颖百度了下,js中Date对象getYear()方法和getFullYear()方法区别,比如:JS中Date对象getYear()方法和getFullYear()方法区别发现很多人写的是:

在IE中是可以正确获取年份:2016,但是在FF等浏览器下则为:116。

原因则是 在 FF等浏览器内 getYear 返回的是 "当前年份-1900" 的值(即年份基数是1900)

而IE则是 当today的年份大于等于2000的时,直接将1900加上了,返回的 2016。

但是当小颖将上面的代码在IE中运行之后,发现结果还是:116,小颖的IE版本是:

所以小颖觉得可能随着IE版本的更新,IE已经不支持getYear()方法了.不过这只是小颖的猜测,嘻嘻,大家也可以尝试下看看到底是怎样的.

②getFullYear()

            var d = new Date();
            console.log(d.getFullYear());

打印结果为:2016

使用getFullYear()在IE和FF中都可以正确获取年份:2016

2.下面我们一起来看看getFullYear()、getMonth()、getDate().

①getFullYear()

定义和用法

getFullYear() 方法可返回一个表示年份的 4 位数字。

浏览器支持

所有主要浏览器都支持 getFullYear() 方法

语法

Date.getFullYear()

返回值

类型 描述
Number 表示年份的 4 位数字。

实例

            var d = new Date();
            console.log(d.getFullYear());
            var d2=new Date(2015,11,05);
            console.log(d2.getFullYear());

打印结果

2016

2015

②getMonth()

定义和用法

getMonth() 方法可返回表示月份的数字。返回值是 0(一月) 到 11(十二月) 之间的一个整数。

注意: 一月为 0, 二月为 1, 以此类推。

浏览器支持

所有主要浏览器都支持 getMonth() 方法

语法

Date.getMonth()

返回值

类型 描述
Number 返回值是 0(一月) 到 11(十二月) 之间的一个整数。

实例

            var d = new Date();
            console.log(d.getMonth()+1);//因为getMonth()返回值是 0(一月) 到 11(十二月) 之间的一个整数。所以要给其加1
            var d2=new Date(2015,11,05);
            console.log(d2.getMonth());

打印结果

12

11

③getDate()

定义和用法

getDate() 方法可返回月份的某一天。

浏览器支持

所有主要浏览器都支持 getDate() 方法

语法

Date.getDate()

返回值

类型 描述
Number dateObject 所指的月份中的某一天,使用本地时间。返回值是 1 ~ 31 之间的一个整数。

实例

            var d = new Date();
            var dd1 = d.getDate();
            var d2=new Date(2015, 12, 15);
            var dd2 = d2.getDate();
            console.log(dd1);
            console.log(dd2);

打印结果

27

15

3.js获取给定月份的N个月后的日期

①获取当前日期的3个月后的日期

            var d = new Date();
            d.setMonth(d.getMonth() + 3);
            var yy1 = d.getFullYear();
            var mm1 = d.getMonth()+1;//因为getMonth()返回值是 0(一月) 到 11(十二月) 之间的一个整数。所以要给其加1
            var dd1 = d.getDate();
            if (mm1 < 10 ) {
                mm1 = ‘0‘ + mm1;
            }
            if (dd1 < 10) {
              dd1 = ‘0‘ + dd1;
            }
            console.log(yy1 + ‘-‘ + mm1 + ‘-‘ + dd1);

当前时间为:2016年12月27号打印结果    2017-03-27

当前时间为:2016年09月08号打印结果    2016-12-08

②获取给定月份的3个月后的日期

            var d = new Date(2015, 12, 15);
            // 因为getMonth()获取的月份的值只能在0~11之间所以我们在进行setMonth()之前先给其减一
            d.setMonth((d.getMonth()-1) + 3);
            var yy1 = d.getFullYear();
            var mm1 = d.getMonth()+1;
            console.log(mm1);
            var dd1 = d.getDate();
            if (mm1 < 10 ) {
                mm1 = ‘0‘ + mm1;
            }
            if (dd1 < 10) {
              dd1 = ‘0‘ + dd1;
            }
            console.log(yy1 + ‘/‘ + mm1 + ‘/‘ + dd1);

打印结果

3

2016/03/15

时间: 2024-10-02 22:45:52

js获取给定月份的N个月后的日期的相关文章

js获取系统月份大小总是小一位

一 问题:项目过程中用一下方法获取系统日期,结果月份总是小一位. var myDate = new Date();myDate.getFullYear();myDate.getMonth();$("#date1").val(myDate.getFullYear() + '/' + myDate.getMonth()); 二  解决方法  查询相关资料后得知JS获取系统月份getMonth() 是0-11来表示1-12的.最后将项目源码最后行改成 $("#date1"

js获取一个月份最大天数和获取月的最后一天

代码如下: <html xmlns=http://www.w3.org/1999/xhtml >     <head>     <title>标题页</title>     <script language=javascript>     function getlastday(year,month)      {       var new_year = year;    //取当前地年份       var new_month = month

js处理日期的一些整理(js获取给定日期前一天的日期)

var date = new Date(); alert(date);//获取当前时间 alert(date.getFullYear());//获取当前年分 alert(date.getMonth());//获取月份(获取当前月份要加1) alert(date.getDate());//获取当前日期的几号 alert(date.getDay());//获取当前是星期几 alert(date.getTime());//获取距离1970/01/01 至今的毫秒 settime()是向 1970/01

JS获取当前时间 格式 年月日 礼拜几 显示阴历日期 节气

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

js获取n分钟(或n小时或n个月)后(或前)的时间(日期)

标题有点绕,其实意思就是根据系统当前时间,获取n分钟或n小时或n个月后的时间. 例如:当前时间下,获取10分钟后的时间. var date=new Date(); //1. js获取当前时间 var min=date.getMinutes(); //2. 获取当前分钟 date.setMinutes(min+10); //3. 设置当前时间+10分钟:把当前分钟数+10后的值重新设置为date对象的分钟数 var y = date.getFullYear(); var m = (date.get

vue-cli在打包后js获取的图片路径错误问题时候

在用npm run build 打包的时候,正常img标签中的src图片路径和css中的图片路径是可以正常识别的, 但是在打包js获取的图片路径时,打包后无法找到图片,原因是 js动态生成的路径无法被url-loader解析到,如果你去build,会发现图片甚至不会打包输出到dist目录(webpack是按需打包的). 如果你是vue-cli初始化的项目,解决的办法:第一步,把图片放到src同级的static目录(build/build.js文件中有一段代码是把static目录拷贝到dist/s

Js获取当前日期时间+日期印证+判断闰年+日期的天数差+日期格式化+JS判断某年某月有多少天

Js获取当前日期时间+日期验证+判断闰年+日期的天数差+日期格式化+JS判断某年某月有多少天 字符串转日期型+Js当前日期时间+日期验证+判断闰年+日期的天数差+日期格式化+日期所在年的第几周 日期时间脚本库方法列表Date.prototype.isLeapYear 判断闰年Date.prototype.Format 日期格式化Date.prototype.DateAdd 日期计算Date.prototype.DateDiff 比较日期差Date.prototype.toString 日期转字符

js如何获取指定月份的天数

js如何获取指定月份的天数:有时候需要获取指定年中某一月的天数,因为每隔月的天数是有所不同的,并且不同年份同一个月的天数也有所不同,例如2月份,在闰年和平年的时候天数就是不同的,下面就介绍一个简单的方法来获取某一年中指定月份的天数.代码如下: function getDadys(whichYear,whichMonth) { var nextMoth=whichMonth+1 var nextYear=whichYear; if(nextMoth==13) { nextMoth=1; nextY

js获取几个月前,几周前时间。

/** *  DK 命名空间  防止全局变量污染 */ var DK = {} ; /** * 获取前几个月,默认为一个月,当前时间 * @author duke * @date 格式为yyyy-mm-dd的日期,如:2014-01-25 */ DK.getPreMonth = function() { var obj = DK.init(arguments); var arr = obj.date.split('-'); var year = parseInt(arr[0]); //获取当前日