在JavaScript中使用日期可能很复杂。学习所有的技巧以及如何使用它们。
处理日期可以很“复杂”。无论使用什么技术,开发人员都会感到痛苦。
JavaScript提供了一个通过强大的内置对象Date来处理日期的功能。
提示:当处理日期时,您可能希望使用一个库。Moment.js和date-fns是最流行的两个。
日期对象 一个日期对象实例表示一个时间点。
尽管名字是Date,它也处理时间。
初始化日期对象 我们使用以下方式初始化一个日期对象。
new Date() 这将创建一个指向当前时间点的日期对象。
在内部,日期以从1970年1月1日(UTC)以来的毫秒表示。这个日期很重要,因为在计算机看来,一切都是在那一天开始的。
您可能对UNIX时间戳很熟悉:它代表了自那个著名日期以来经过的秒数。
如果我们有一个UNIX时间戳,我们可以使用以下方式实例化一个JavaScript日期对象:
const timestamp = 1530826365; new Date(timestamp * 1000); 除非时间戳是由JS生成的,否则它已经在正确的比例上。
确保传递一个数字(字符串将得到一个“无效的日期”结果 - 如有疑问请使用parseInt())
如果我们传递0,我们将得到一个代表1970年1月1日(UTC)时间的日期对象:
new Date(0) 如果我们传递一个字符串而不是数字,那么日期对象将使用parse方法来确定您传递的日期。例如:
new Date('2018-07-22') new Date('2018-07') // 2018年7月1日,00:00:00 new Date('2018') // 2018年1月1日,00:00:00 new Date('07/22/2018') new Date('2018/07/22') new Date('2018/7/22') new Date('July 22, 2018') new Date('July 22, 2018 07:22:13') new Date('2018-07-22 07:22:13') new Date('2018-07-22T07:22:13') new Date('25 March 2018') new Date('25 Mar 2018') new Date('25 March, 2018') new Date('March 25, 2018') new Date('March 25 2018') new Date('March 2018') // 2018年3月1日,00:00:00 new Date('2018 March') // 2018年3月1日,00:00:00 new Date('2018 MARCH') // 2018年3月1日,00:00:00 new Date('2018 march') // 2018年3月1日,00:00:00 这里有很大的灵活性。您可以在月份或日期中添加或省略前导零。...