根据特定日期生成date对象

一直想写一篇关于js 日期类型date的文章

我们都知道

new Date()  //没有任何参数,创建的对象自动获取当前日期
new Date(1535610732881);   //如果我们想要根据特定的日期和时间创建日期对象,则传入表示日期的毫秒数;

为了简化获取毫秒数 es提供了两个方法 Date.parse() 和 Date.UTC() 

//Date.parse()接收一个表示日期的字符串参数,然后根据这个字符串返回相应的毫秒数
new Date(Date.parse("6/13/2018"));  // "月/日/年" : "1/13/2018"
new Date(Date.parse("January 13,2018"));  // "英文月名 日,年" : "January 13,2018"
new Date(Date.parse("Tue May 25 2018 18:00:00 GMT-0700"));  // "英文星期几 英文月名 日 年 时:分:秒 时区" : "Tue May 25 2018 18:00:00 GMT-0700"
new Date(Date.parse("2018-06-25T00:00:00.123"));  // es5: YYYY-MM-DDTHH:mm:ss.sssZ  : "2018-06-25T00:00:00"
//上面的Date.parse()可以省略 js后台默认会调用 Date.parse()
new Date("6/13/2018");
new Date("January 13,2018");
new Date("Tue May 25 2018 18:00:00 GMT-0700");
new Date("2018-06-25T00:00:00.123");
//Date.UTC()同样是返回日期的毫秒数
//参数分别为 年份 基于 0 的月份 月中的哪一天 小时 分钟 秒。  这些参数只有前两个是必须的
new Date(Date.UTC(2018,6))
new Date(Date.UTC(2018,6,18,17,30,33));
//同样的Date.UTC()可以省略 js后台默认会调用 Date.UTC()
es5提供了 Date.now()方法,返回当前时间的毫秒数。

关于date对象其他的方法(例如:new Date.valueOf(),new Date.getTime())这里就不多介绍了

关于根据特定日期创建日期对象还有其他的一些写法,但兼容上有待验证,例如:

new Date("yyyy/MM/dd hh:mm:ss");
new Date("yyyy/MM/dd");
new Date(yyyy,MM,dd);

 

你可能感兴趣的:(根据特定日期生成date对象)