JS获取当前毫秒数(时间戳)汇总

个人博客 https://www.shaotianyu.com/

方法1: Date.now()

Date对象的内置方法

let a = Date.now();
console.log(a);		//1523619204809

方法2: getTime()

创建一个日期对象,调用该对象的getTime()方法

let d = new Date().getTime()
console.log(d);		//1523619204809		

方法3: valueOf()

基于Date类型的valueOf()方法,不会返回一个字符串,而是返回日期的毫秒表示

let c = new Date().valueOf();
console.log(c);		//1523619204809			

另外,基于Date类型valueOf()的特征,我们可以对两个日期进行比较大小:

let a = new Date('2000-02');
let b = new Date('2010-02');

console.log(b > a);		//true

这里的b > a中的关系操作符> , b 和 a是对象,调用对象的valueOf()方法,而Date类型的valueOf()会返回对应的毫秒数,所以可以进行比较。

具体的有关大小比较的转化规则,之前博客有写到,JS中大于、小于的不同比较规则

方法4: +new Date()

let b = +new Date();
console.log(b);		//1523619204809			

+new Date()结果为什么是毫秒数?

其实这个涉及到JS中另外一个知识点,一元操作符(+或者-)对 非数值 的转换。

如果 +号 应用于对象之前,会首先调用找个对象的valueOf()toString().

我们看一个例子:

let n = {
	valueOf: function(){
		return -1;
	}
}

console.log(+n)		// -1

+n调用了对象的valueOf(),结果是 -1

所以+new Date()这个方法又回到了方法3中的valueOf(),所以执行结果是相同的。

方法5:

Date.parse(new Date())
  • 16
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值