js 中 Date 函数常见用法

走在前端的大道上

这是我之前学习时候的一篇笔记,现在整理一下发出来,希望对刚入门前端的朋友有所帮助,前端老司机请请忽略本篇文章


记得我刚学js的时候只知道Date的一些常见的用法,有多常见?

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();

后来在一些项目或者文章发现了一些新方法,这也是我这篇文章想传递给小白的

1.通过 new Date(2018,1,23) 获取时间

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)

clipboard.png

如果你想获取某个月的最后一天怎么办?比如2018年的2月

var a = new Date(2018,2,0)
console.log(a) //Wed Feb 28 2018 00:00:00 GMT+0800 (CST)
a.getDate() //28

clipboard.png

2.通过 new Date('2018-1-24') 获取时间

注意这种写法的兼容性,在safari 和 iOS 系统下 不支持 - 这种写法,保险起见 使用 / ,如2018/1/1(2018/01/01,2018/1/01)

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)

clipboard.png

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

clipboard.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值