专业编程基础技术教程

网站首页 > 基础教程 正文

js 中Date.now() 与new Date() 的区别

ccvgpt 2024-11-19 02:11:31 基础教程 6 ℃

1. 返回值类型

  • Date.now():返回一个数字,表示从1970年1月1日 00:00:00 UTC到现在的毫秒数。这个值通常被称为时间戳。
  • new Date():返回一个Date对象,该对象表示当前的日期和时间。可以通过调用该对象的方法来获取具体的年份、月份、日期等信息。

2. 使用场景

  • Date.now():当你只需要知道当前的时间戳(即自1970年1月1日以来的毫秒数),而不需要对日期进行复杂的操作时,使用Date.now()会更加方便和高效。它直接返回一个数值,便于计算或存储。
  • new Date():如果你需要创建一个Date对象,并且可能需要对该对象执行进一步的操作,比如格式化日期输出、获取特定部分的日期(如年、月、日)或者进行日期运算,那么应该使用new Date()。

3. 兼容性

  • Date.now():此方法是在ECMAScript 5.1标准中引入的,因此在一些非常旧的浏览器中可能不支持。不过,现在几乎所有的现代浏览器都支持Date.now()。
  • new Date():这个构造函数自JavaScript语言诞生之初就存在了,所以它的兼容性非常好,可以在所有浏览器中使用。

Date.now()示例

let timestamp = Date.now();
console.log(timestamp); // 输出类似 1609459200000 的时间戳

new Date()示例

let currentDate = new Date();
console.log(currentDate); // 输出类似于 "2024-11-15T05:18:00.000Z" 的日期字符串
console.log(currentDate.getFullYear()); // 获取当前年份
console.log(currentDate.getMonth() + 1); // 获取当前月份,注意月份是从0开始计数的
console.log(currentDate.getDate()); // 获取当前日

总结来说,选择使用Date.now()还是new Date()取决于你的具体需求。如果只是需要一个简单的时间戳,那么Date.now()是一个更好的选择;如果需要更多关于日期的操作,则应使用new Date()。

js 中Date.now() 与new Date() 的区别

Tags:

最近发表
标签列表