new Date().getMonth() 的取值问题

这是去一家公司的面试题,感觉没有什么难的,不就取出当前的月份循环,然后判断打印几次,请您看一下这几行代码,

 

<SCRIPT language="JavaScript">

 function poot(){

  for(var i=0;i<new Date().getMonth();i++){
       alert(
'@_@');
      alert(new Date().getFullYear()+"年"+new Date().getMonth()+"月"+new Date().getDate()+"号")
  }

}

poot();

</SCRIPT>

 

js 执行结果new Date().getMonth() 的取值为1,所以循环一次

 

通过查文档,api这样写


getMonth 方法
返回 Date 对象中用本地时间表示的月份值。

dateObj.getMonth()

必选项 dateObj 参数为 Date 对象。

说明
要获取用全球标准时间 (UTC)表示的月份值,请使用 getUTCMonth 方法。

getMonth 方法返回一个处于 0 到 11 之间的整数,它代表 Date 对象中的月份值。这个整数并不等于按照惯例来表示月份的数字,而是要比按惯例表示的值小 1。如果一个 Date 对象中保存的时间值是 "Jan 5, 1996 08:47:00",那么 getMonth 方法就会返回 0。

示例
下面这个例子说明了 getMonth 方法的用法:

function DateDemo(){
   var d, s = "今天日期是: ";
   d = new Date();
   s += (d.getMonth() + 1) + "/";
   s += d.getDate() + "/";
   s += d.getYear();
   return(s);
}

 

 

我也就明白为什么会打印一次了,因为月份是从0开始的

 

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值