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-09-11 15:28:07

    Node 性能优化

    硬盘的 IO 开销是非常昂贵的,硬盘 IO 花费的 CPU 时钟周期是内存的 41000000/250 = 164000 倍。 所有在一般应用中,优化要首先考虑数磁盘 IO , 通常也就是数据层的优化,说到数据库优化,很多人第一时间会想到加索引,但是什么加了索引查询会变快呢?索引要怎么加才合适呢?

  • 2019-09-11 16:49:56

    flex布局详解,Flex 布局语法教程

    布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现

  • 2019-09-12 16:32:19

    JSLint,JSHint,ESLint的区别

    主流的JS Lint工具及介绍 JavaScript已经发展蛮长时间了,对应的Lint工具也是层出不穷,下面介绍一下比较主流的几个Lint工具(其实是我用过的几个XD)

  • 2019-09-16 22:56:52

    java.lang.NoSuchMethodError:SpringJAR包版本冲突错误解决方法

    查询了相关资料,大部分都说引起的原因是JAR包错误或JAR包冲突,查看了配置文件,并没有发现错误之处,因为用的是maven工程,这让我想到了maven的JAR引用的传递性,应该是引用的JAR包中传递引用了相同的包,没有排除。通过mvn dependency:tree 命令查看当前工程引用的依赖JAR树

  • 2019-09-17 17:19:42

    strapi 先进的 headless cms

    为什么叫cms而不是框架,主要是因为他提供了一个程序员操作面板,看起来像是一个综合的后台管理,很容易误解具体项目的后台管理,他更像是一个数据库管理面板顺便完成api的自动开发操作。