You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Jest中对JS进行基准测试:Date转Number

Number(new Date()) 与 +new Date() 的性能对比及结论

我在本地针对这两种获取时间戳的方式做了基准测试,整理出以下内容供大家参考:

  • 功能上两者完全等价,都能把Date实例转换为对应的Unix时间戳数值
  • 性能方面,+new Date() 会略快于 Number(new Date()),但在现代浏览器/Node.js环境下,两者的性能差极小,日常开发中基本可以忽略
  • 可读性上,Number(new Date()) 的表意更直白,新手也能快速理解;+new Date() 属于利用一元加号的类型转换语法糖,需要对JS类型转换规则有一定了解

测试代码示例

// 测试 +new Date()
console.time('plus-new-date');
for (let i = 0; i < 1000000; i++) {
  +new Date();
}
console.timeEnd('plus-new-date');

// 测试 Number(new Date())
console.time('number-new-date');
for (let i = 0; i < 1000000; i++) {
  Number(new Date());
}
console.timeEnd('number-new-date');

测试环境

  • Chrome 118(桌面端)
  • 单次测试循环100万次,重复5次取平均耗时

如果各位有不同环境下的测试数据、更科学的测试方案,或者代码优化建议,欢迎一起交流讨论。

内容的提问来源于stack exchange,提问作者sybb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:39:52