走在前端的大道上前端
这是我以前学习时候的一篇笔记,如今整理一下发出来,但愿对刚入门前端的朋友有所帮助,前端老司机请请忽略本篇文章学习
记得我刚学js的时候只知道Date的一些常见的用法,有多常见?spa
var date = new Date()//获取当前时间 let Y = date.getFullYear(); let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1); let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate(); let h = date.getHours() < 10 ? '0' + date.getHours() : date.getHours(); let m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); let s = date.getSeconds();
后来在一些项目或者文章发现了一些新方法,这也是我这篇文章想传递给小白的code
1.经过 new Date(2018,1,23) 获取时间ip
var a = new Date(2018,1,23) console.log(a) //Fri Feb 23 2018 00:00:00 GMT+0800 (CST) var a = new Date(2018,1,24) console.log(a) //Sat Feb 24 2018 00:00:00 GMT+0800 (CST) var a = new Date(2018,0,24) console.log(a) //Wed Jan 24 2018 00:00:00 GMT+0800 (CST) var a = new Date(2018,13,24) console.log(a) //Sun Feb 24 2019 00:00:00 GMT+0800 (CST) var a = new Date(2018,11,24,23,11) console.log(a) //Mon Dec 24 2018 23:11:00 GMT+0800 (CST)
若是你想获取某个月的最后一天怎么办?好比2018年的2月get
var a = new Date(2018,2,0) console.log(a) //Wed Feb 28 2018 00:00:00 GMT+0800 (CST) a.getDate() //28
2.经过 new Date('2018-1-24') 获取时间it
注意这种写法的兼容性,在safari 和 iOS 系统下 不支持 - 这种写法,保险起见 使用 / ,如2018/1/1(2018/01/01,2018/1/01)console
var a = new Date('2018-1-24') console.log(a) //Wed Jan 24 2018 00:00:00 GMT+0800 (CST) var a = new Date('2018-12-24 1:12:14') console.log(a) //Mon Dec 24 2018 01:12:14 GMT+0800 (CST) var a = new Date('2018-0-24') console.log(a) //Invalid Date var a = new Date('2018-13-24') console.log(a) //Invalid Date var a = new Date('2018-12-24 23:12:14') console.log(a) //Mon Dec 24 2018 23:12:14 GMT+0800 (CST)
3.经过 Date.parse('2018-12-1') 获取时间
注意这种写法的兼容性,在safari 和 iOS 系统下 不支持 - 这种写法,保险起见 使用 / ,如2018/1/1(2018/01/01,2018/1/01)入门
var a = Date.parse('2018-12-1') console.log(a) //1543593600000 var a = Date.parse('2018-12-1 13:13:12') console.log(a) //1543641192000 var a = new Date('2018-12-1 13:13:12') console.log(a) //Sat Dec 01 2018 13:13:12 GMT+0800 (CST) var a = new Date('2018-12-1 13:13:12').getTime() console.log(a) //1543641192000 var a = Date.parse('2018-13-1') console.log(a) //NaN