日期函数的坑

var other = new Date;
other.setDate(31);
other.setMonth(2);
other.setFullYear(2016);
other.setMonth(1);
other.setDate(1);
console.log(other);

原以为这段代码得到的是21号,可他返回的却是31号。

分析一下:

other.setFullYear(2016); //2016-03-31

此时设置月份为2月:

other.setMonth(1); //2016-02-31 是错误的值,所以转成2016-03-02

再设置日期为1号:

other.setDate(1); //2016-03-01
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 上次给大家分享了《2017年最全的excel函数大全(5)——逻辑函数》,这次分享给大家日期和时间函数(上)。 D...
    幸福的耗子阅读 5,862评论 0 5
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,178评论 6 13
  • 时光飞逝兜兜转转。不知不觉我们已上高二,物转星移,花开花落。周而复始,生生不息,但今昔己非昨日 然今日花容依但。 ...
    英之魂阅读 181评论 0 0
  • 这两年流行了一个新鲜的名词——“财务自由” 一时间贩夫走卒趋之若鹜,似乎“赚钱”这个词已经跟不上时...
    萬久阅读 447评论 1 0
  • 为政篇第六则: 原文 子游问孝。子曰:“今之孝者,是谓能养。至于犬马皆能有养;不敬,何以别乎?” 直译: 子游问什...
    遇见苏小州阅读 293评论 0 0