JavaScript Date

一、基本引用类型

1.Date

  • 01-date-method.js

    /*
    * ECMAScript 的Date 类型参考了Java 早期版本中的java.util.Date。为此,Date 类型将日期
    保存为自协调世界时(UTC,Universal Time Coordinated)时间1970 年1 月1 日午夜(零时)至今所
    经过的毫秒数。使用这种存储格式,Date 类型可以精确表示1970 年1 月1 日之前及之后285 616 年的
    日期
    * */
    // let now = new Date()
    // console.log(now)
    
    /*在不给Date 构造函数传参数的情况下,创建的对象将保存当前日期和时间。要基于其他日期和时
    间创建日期对象,必须传入其毫秒表示(UNIX 纪元1970 年1 月1 日午夜之后的毫秒数)。ECMAScript
    为此提供了两个辅助方法:Date.parse()和Date.UTC()。*/
    // Date.parse()
    // 参数形式
    // 1."月/日/年"
    let date1 = new Date(Date.parse('3/29/1994'))
    // console.log(date1)
    
    // 2."月名 日, 年"
    let date2 = new Date(Date.parse('March 29, 1994'))
    // console.log(date2)
    
    // 3."周几 月名 日 年 时:分:秒 时区"
    let date3 = new Date(Date.parse('Tue March 29 1994 03:00:00 GMT-0700'))
    // console.log(date3)
    
    // 4."YYYY-MM-DDTHH:mm:sssZ"
    let date4 = new Date(Date.parse('2019-05-23T00:00:00'))
    // console.log(date4)
    
    // new Date()中如果传入的字符串参数不表示日期,则返回Invalid Date;
    // 如果传入的字符串参数表示日期,则Date会在后台调用Date.parse()
    let date5 = new Date('error date')
    // console.log(date5)
    
    let date6 = new Date('2020-02-23')
    // console.log(date6)
    
    let date7 = new Date(Date.parse('2020-02-23'))
    // console.log(date7)
    // date6于date7返回值相同
    
    
    // Date.UTC()返回日期的毫秒表示,参数为年、零起点月数(1 月是0,2 月是1,以此类推)、日(1~31)、时(0~23)、
    // 分、秒和毫秒,其中年月必需,其余非必需,默认为0
    // GMT 时间2020年1月1日零点
    
    let y2k = new Date(Date.UTC(2020, 0))
    // console.log(y2k)
    
    let allFives = new Date(Date.UTC(2020, 3, 29, 17, 45, 35))
    // console.log(allFives)
    
    // Date.UTC()隐式调用,在创建本地日期时可隐式调用
    
    // 本地时间2000年1月1日零点
    let y2k2 = new Date(2000, 0)
    // console.log(y2k2)
    
    let allFives2 = new Date(2005, 4, 5, 17, 55, 55)
    // console.log(allFives2)
    
    // Date.now()
    
    // 起始时间
    let start = Date.now()
    
    // 调用函数
    console.log('do something')
    
    // 结束时间
    let stop = Date.now()
    let result = stop - start
    console.log(result)
    
  • 02-inherit-method.js

    // 继承的方法
    // 1.toLocaleString()
    let date1 = new Date()
    console.log(date1.toLocaleDateString())  // 2021/2/23
    
    // 2.toString()
    let date2 = new Date()
    console.log(date2.toString())  // Tue Feb 23 2021 10:52:29 GMT+0800 (中国标准时间)
    
    // 3.valueOf()不返回字符串
    let date3 = new Date(2020, 0, 1)
    let date4 = new Date(2020, 1, 1)
    console.log(date3 > date4)  // false
    console.log(date3 < date4)  // true
    
  • 03-date-format-method.js

    // 日期格式化方法
    let date = new Date()
    
    //  toDateString()显示日期中的周几、月、日、年(格式特定于实现);
    console.log(date.toDateString())  // Tue Feb 23 2021
    //  toTimeString()显示日期中的时、分、秒和时区(格式特定于实现);
    console.log(date.toTimeString())  // 10:56:19 GMT+0800 (中国标准时间)
    //  toLocaleDateString()显示日期中的周几、月、日、年(格式特定于实现和地区);
    console.log(date.toLocaleDateString())  // 2021/2/23
    //  toLocaleTimeString()显示日期中的时、分、秒(格式特定于实现和地区);
    console.log(date.toLocaleTimeString())  // 上午10:57:08
    //  toUTCString()显示完整的UTC 日期(格式特定于实现)。
    console.log(date.toUTCString())  // Tue, 23 Feb 2021 02:57:28 GMT
    
    
  • 04-date-module-method.js

    // 日期/时间组件方法
    let date = new Date(2005, 4, 5, 17, 55, 55)
    // getTime() 返回日期的毫秒表示;与valueOf()相同
    console.log(date.getTime())
    console.log(date.valueOf())
    
    // setTime(milliseconds) 设置日期的毫秒表示,从而修改整个日期
    console.log(date)
    date.setTime(1125286955000)
    console.log(date)
    
    // getFullYear() 返回4 位数年(即2019 而不是19)
    console.log(date.getFullYear())
    // getUTCFullYear() 返回UTC 日期的4 位数年
    console.log(date.getUTCFullYear())
    
    // setFullYear(year) 设置日期的年(year 必须是4 位数)
    console.log(date)
    date.setFullYear(2098)
    console.log(date)
    // setUTCFullYear(year) 设置UTC 日期的年(year 必须是4 位数)
    console.log(date)
    date.setUTCFullYear(1298)
    console.log(date)
    
    // getMonth() 返回日期的月(0 表示1 月,11 表示12 月)
    console.log(date.getMonth())
    // getUTCMonth() 返回UTC 日期的月(0 表示1 月,11 表示12 月)
    console.log(date.getUTCMonth())
    
    // setMonth(month) 设置日期的月(month 为大于0 的数值,大于11 加年)
    date.setMonth(11)
    console.log(date)
    // setUTCMonth(month) 设置UTC 日期的月(month 为大于0 的数值,大于11 加年)
    date.setUTCMonth(9)
    console.log(date)
    
    // getDate() 返回日期中的日(1~31)
    console.log(date.getDate())
    // getUTCDate() 返回UTC 日期中的日(1~31)
    console.log(date.getUTCDate())
    
    // setDate(date) 设置日期中的日(如果date 大于该月天数,则加月)
    date.setDate(21)
    console.log(date)
    // setUTCDate(date) 设置UTC 日期中的日(如果date 大于该月天数,则加月)
    date.setUTCDate(25)
    console.log(date)
    
    // getDay() 返回日期中表示周几的数值(0 表示周日,6 表示周六)
    console.log(date.getDay())
    // getUTCDay() 返回UTC 日期中表示周几的数值(0 表示周日,6 表示周六)
    console.log(date.getUTCDay())
    
    // getHours() 返回日期中的时(0~23)
    console.log(date.getHours())
    // getUTCHours() 返回UTC 日期中的时(0~23)
    console.log(date.getUTCHours())
    
    // setHours(hours) 设置日期中的时(如果hours 大于23,则加日)
    date.setHours(21)
    console.log(date)
    // setUTCHours(hours) 设置UTC 日期中的时(如果hours 大于23,则加日)
    date.setUTCHours(10)
    console.log(date)
    
    // getMinutes() 返回日期中的分(0~59)
    console.log(date.getMinutes())
    // getUTCMinutes() 返回UTC 日期中的分(0~59)
    console.log(date.getUTCMinutes())
    
    // setMinutes(minutes) 设置日期中的分(如果minutes 大于59,则加时)
    date.setMinutes(20)
    console.log(date)
    // setUTCMinutes(minutes) 设置UTC 日期中的分(如果minutes 大于59,则加时)
    date.setUTCMinutes(19)
    console.log(date)
    
    // getSeconds() 返回日期中的秒(0~59)
    console.log(date.getSeconds())
    // getUTCSeconds() 返回UTC 日期中的秒(0~59)
    console.log(date.getUTCSeconds())
    
    // setSeconds(seconds) 设置日期中的秒(如果seconds 大于59,则加分)
    date.setSeconds(29)
    console.log(date)
    // setUTCSeconds(seconds) 设置UTC 日期中的秒(如果seconds 大于59,则加分)
    date.setUTCSeconds(43)
    console.log(date)
    
    // getMilliseconds() 返回日期中的毫秒
    console.log(date.getMilliseconds())
    // getUTCMilliseconds() 返回UTC 日期中的毫秒
    console.log(date.getUTCMilliseconds())
    
    // setMilliseconds(milliseconds) 设置日期中的毫秒
    date.setMilliseconds(123)
    console.log(date)
    // setUTCMilliseconds(milliseconds) 设置UTC 日期中的毫秒
    date.setUTCMilliseconds(1234)
    
    // getTimezoneOffset() 返回以分钟计的UTC 与本地时区的偏移量(如美国EST 即“东部标准时间”返回300,进入夏令时的地区可能有所差异)
    console.log(date.getTimezoneOffset())
    
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

5coder

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值