# Date 创建一个 Date 实例,该实例呈现时间中的某个时刻。Date 对象则基于 Unix Time Stamp,即自 1970 年 1 月 1 日(UTC)起经过的毫秒数。 ## 语法 ```ts new Date(); new Date(value); new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]); ``` - 如果没有输入任何参数,则 Date 的构造器会依据系统设置的当前时间来创建一个 Date 对象。 - 如果提供了至少两个参数,其余的参数均会默认设置为 1(如果没有指定 day 参数)或者 0(如果没有指定 day 以外的参数)。 - uts 的时间由世界标准时间(UTC)1970 年 1 月 1 日开始,用毫秒计时,一天由 86,400,000 毫秒组成。Date 对象的范围是 -100,000,000 天至 100,000,000 天(等效的毫秒值)。 ## 静态方法 ### now() ```ts // this example takes 2 seconds to run const start = Date.now() console.log('starting timer...') // expected output: starting timer... setTimeout(() => { const millis = Date.now() - start console.log(`seconds elapsed = ${Math.floor(millis / 1000)}`) // expected output: seconds elapsed = 2 }, 2000) ``` ## 实例方法 ### toString() ### toDateString() ### getTime() ### getFullYear() ### getMonth() ### getDate() ### getDay() ### getHours() ### getMinutes() ### getSeconds() ### setTime(time) ### setMilliseconds(ms) ### setSeconds(sec) ### setMinutes(min) ### setHours(hours) ### setDate(date) ### setMonth(month) ### setFullYear(year) 各个平台在处理时间戳为负数时会有细节差异,尽量避免 参数小于1970的情况 ### parse(s)