V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
maiziedu
V2EX  ›  JavaScript

Javascript Date 对象

  •  
  •   maiziedu · 2017-09-06 16:56:08 +08:00 · 1649 次点击
    这是一个创建于 2636 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1.定义

    创建 Date 实例用来处理日期和时间。Date 对象基于 1970 年 1 月 1 日世界协调时起的毫秒数

    2.语法

    构造函数

    new Date()

    new Date(value)

    value 代表自世界协调时 1970 年 1 月 1 日 00:00:00 经过的毫秒数。

    new Date(dateString)

    dateString 表示日期的字符串值。该字符串应该能被 Date.parse() 方法识别

    new Date(year,month,day,hour,minute,second,millisecond)

    注意

    需要注意的是只能通过调用 Date 构造函数来实例化日期对象:以常规函数调用它(即不加 new 操作符)将会返回一个字符串,而不是一个日期对象。另外,不像其他 JavaScript 类型,Date 对象没有字面量格式。

    Date 需要调用多个参数的构造函数,当数值大于合理范围时(如月份为 13 或者分钟数为 70 ),会被调整为相邻值。比如 new Date(2013, 13, 1)会等于 new Date(2014, 1, 1),还会新建一个 2014-02-01 的日期(注意月份是有补 0 的)

    如果没有输入任何参数,则 Date 的构造器会依据系统设置的当前时间来创建一个 Date 对象。

    如果提供了至少两个参数,其余的参数均会默认设置为 1 (如果没有提供 day 参数)或者 0

    JavaScript 的时间是由世界标准时间( UTC ) 1970 年 1 月 1 日开始,用毫秒计时,一天由 86,400,000 毫秒组成。Date 对象的范围是-100,000,000 天至 100,000,000 天(等效的毫秒值)。

    JavaScript 的 Date 对象为跨平台提供了统一的行为。时间属性可以在不同的系统中表示相同的时刻,而如果使用了本地时间对象,则反映当地的时间

    JavaScript 的 Date 对象提供了数个 UTC 时间的方法,也相应提供了当地时间的方法。UTC,也就是我们所说的格林威治时间,指的是 time 中的世界时间标准。而当地时间则是指执行 JavaScript 的客户端电脑所设置的时间。

    以一个函数的形式来调用 JavaScript 的 Date 对象( i.e., 不使用 new 操作符)会返回一个代表当前日期和时间的字符串。

    3.方法

    Date.now()

    返回自 1970-1-1 00:00:00 UTC 至今所经过的毫秒数。

    Date.parse()

    解析一个表示日期的字符串,并返回从 1970-1-1 00:00:00 所经过的毫秒数。

    Date.UTC()

    接受和构造函数最长形式的参数相同的参数(从 2 到 7 ),并返回从 1970-01-01 00:00:00 UTC 开始所经过的毫秒数。

    dateObj.getDate()

    根据本地时间,返回一个指定的日期对象为一个月中的第几天,返回一个 1 到 31 的整数值

    dateObj.getDay()

    根据本地时间返回指定日期对象的星期中的第几天( 0-6

    dateObj.getFullYear()

    根据本地时间返回指定日期对象的年份(四位数年份时返回四位数字)。

    dateObj.getHours()

    根据本地时间返回指定日期对象的小时( 0-23 )

    dateObj.getMilliseconds()

    根据本地时间返回指定日期对象的微秒( 0-999 )

    dateObj.getMinutes()

    根据本地时间返回指定日期对象的分钟( 0-59 )

    dateObj.getMonth()

    根据本地时间返回指定日期对象的月份( 0-11 )

    dateObj.getSeconds()

    根据本地时间返回指定日期对象的秒数( 0-59 )

    dateObj.getTime()

    返回从 1970-1-1 00:00:00 UTC (协调世界时)到该日期经过的毫秒数,对于 1970-1-1 00:00:00 UTC 之前的时间返回负值。

    dateObj.getTimezoneOffset()

    返回当前时区的时区偏移

    dateObj.setDate()

    根据本地时间为指定的日期对象设置月份中的第几天。

    dateObj.setFullYear()

    根据本地时间为指定日期对象设置完整年份(四位数年份是四个数字)

    dateObj.setHours()

    根据本地时间为指定日期对象设置小时数

    dateObj.setMilliseconds()

    根据本地时间为指定日期对象设置毫秒数

    dateObj.setMinutes()

    根据本地时间为指定日期对象设置分钟数

    dateObj.setMonth()

    根据本地时间为指定日期对象设置月份

    dateObj.setSeconds()

    根据本地时间为指定日期对象设置秒数

    dateObj.setTime()

    通过指定从 1970-1-1 00:00:00 UTC 开始经过的毫秒数来设置日期对象的时间,对于早于 1970-1-1 00:00:00 UTC 的时间可使用负值。

    dateUTCDate()

    根据世界时设置 Date 对象中月份的一天 (1 ~ 31)

    dateObj.toDateString()

    toDateString() 方法以美式英语和人类易读的形式返回一个日期对象日期部分的字符串

    dateObj.toJSON()

    toJSON() 方法返回 Date 对象的字符串形式

    dateObj.toString()

    toString() 方法返回一个字符串,表示该日期对象。

    dateObj.valueOf()

    valueOf() 方法返回一个日期对象的原始值。

    valueOf 方法返回以数值格式表示的一个 Date 对象的原始值,从 1970 年 1 月 1 日 0 时 0 分 0 秒( UTC,即协调世界时)到该日期对象所代表时间的毫秒数

    原文链接: http://www.maiziedu.com/wiki/js/object/

    airyland
        1
    airyland  
       2017-09-06 18:06:19 +08:00
    请不要用抄文档发帖的方式来 spam
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1237 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:45 · PVG 07:45 · LAX 15:45 · JFK 18:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.