非常教程

JavaScript参考手册

日期 | Date

date.setMonth

setMonth()方法根据本地时间为一个设置年份的日期对象设置月份。

语法

dateObj.setMonth(monthValue[, dayValue])

JavaScript 1.3之前的版本

dateObj.setMonth(monthValue)

参数

monthValue介于 0 到 11 之间的整数(表示一月到十二月)。

dayValue从 1 到 31 之间的整数,表示月份中的第几天。

返回值

基于 1 January 1970 00:00:00 UTC 开始计算的毫秒数

描述

如果不指定 dayValue参数,就会使用getDate方法的返回值。

如果有一个指定的参数超出了合理范围,setMonth 会相应地更新日期对象中的日期信息。例如,为monthValue指定 15,则年份会加 1,月份将会使用 3。

这个月的当天将会影响这个方法的行为。从概念上讲,它会将当月的当天的天数加到指定的新月的第一天作为参数,以返回新的日期。例如,如果当前值为2016年8月31日,则调用setMonth值为1将返回2016年3月2日。这是因为2016年2月有29天。

例子

Using setMonth()

var theBigDay = new Date();
theBigDay.setMonth(6);

//Watch out for end of month transitions
var endOfMonth = new Date(2016, 7, 31);
endOfMonth.setMonth(1);
console.log(endOfMonth); //Wed Mar 02 2016 00:00:00

规格

Specification

Status

Comment

ECMAScript 1st Edition (ECMA-262)

Standard

Initial definition. Implemented in JavaScript 1.0.

ECMAScript 5.1 (ECMA-262)The definition of 'Date.prototype.setMonth' in that specification.

Standard

ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'Date.prototype.setMonth' in that specification.

Standard

ECMAScript Latest Draft (ECMA-262)The definition of 'Date.prototype.setMonth' in that specification.

Draft

浏览器兼容性

Feature

Chrome

Firefox

Edge

Internet Explorer

Opera

Safari

Basic Support

(Yes)

(Yes)

(Yes)

(Yes)

(Yes)

(Yes)

Feature

Android

Chrome for Android

Edge mobile

Firefox for Android

IE mobile

Opera Android

iOS Safari

Basic Support

(Yes)

(Yes)

(Yes)

(Yes)

(Yes)

(Yes)

(Yes)

JavaScript

JavaScript 是一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的解释型语言。它已经由ECMA(欧洲电脑制造商协会)通过 ECMAScript 实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器( Chrome、IE、FireFox、Safari、Opera )支持。JavaScript 是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式等,不支持 I/O,比如网络