JS获取13位毫秒数(时间戳)

2021-04-25 09:55:58

参考地址 JS获取当前毫秒数(时间戳)汇总

方法1: Date.now()


Date对象的内置方法


let a = Date.now();

console.log(a); //1523619204809

1

2

方法2: getTime()


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


let d = new Date().getTime()

console.log(d); //1523619204809

1

2

方法3: valueOf()


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


let c = new Date().valueOf();

console.log(c); //1523619204809

1

2

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


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

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


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

1

2

3

4

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


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


方法4: +new Date()


let b = +new Date();

console.log(b); //1523619204809

1

2

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


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


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


我们看一个例子:


let n = {

valueOf: function(){

return -1;

}

}


console.log(+n) // -1

1

2

3

4

5

6

7

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


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


方法5:


Date.parse(new Date())


  • 2019-12-29 15:05:57

    php 数组分页 array_slice()函数用法

    今天用到一个函数,非常好用,分享给大家 array_slice() -从数组中取出一段 也就是说用这个函数可以和sql语句一样实现分页,原理是将查询出的数组,取出从指定下标开始到指定长度的数组

  • 2019-12-30 10:17:21

    router-link传递参数,query

    在vue-router中,有两大对象被挂载到了实例this; $route(只读、具备信息的对象); $router(具备功能的函数) 查询字符串: 去哪里 ? <router-link :to="{name:'detail',query:{id:1}}"> xxx </router-link>

  • 2019-12-30 16:48:41

    vue provide/inject详解和用法

    父子组件交互方式多种,props、vuex、 、 emit、localStorage还有就是这个provide/inject了。它适合层级比较深的组件,比如子,子孙,子孙后代的组件有好几个用到父组件的某个属性,就可以用到这个provide/inject,它可以避免写大量繁琐的传值代码 我这里为什么要使用它? 我一个知识库详情父组件中包含了大量的子组件,每个子组件都需要父组件的知识库ID,这时候我不想写大量props,就用到provide/inject进行传值了

  • 2020-01-03 00:36:00

    break和continue详解for循环

    1. break:直接跳出当前循环体(while、for、do while)或程序块(switch)。其中switch case执行时,一定会先进行匹配,匹配成功返回当前case的值,再根据是否有break,判断是否继续输出,或是跳出判断(可参考switch的介绍)。 2. continue:不再执行循环体中continue语句之后的代码,直接进行下一次循环。