js Date 类型

1.GMT时间、UTC时间、CST时间
  >UTC时间(世界标准时间) 与 GMT时间(格林威治时间

  GMT 即格林尼治标准时间,也就是世界时。GMT的正午是指当太阳横穿格林尼治子午线(本初子午线)时的时间。但由于地球自转不均匀不规则,导致GMT不精确,现在已经不再作为世界标准时间使用。

  UTC 即协调世界时。UTC是以原子时秒长为基础,在时刻上尽量接近于GMT的一种时间计量系统。为确保UTC与GMT相差不会超过0.9秒,在有需要的情况下会在UTC内加上正或负闰秒。UTC现在作为世界标准时间使用。

  所以,UTC与GMT基本上等同,误差不超过0.9秒,我们可以认为格林威治时间就是世界协调时间(GMT=UTC)。UTC是当今民用时间的基础。它使用一天 24 小时时间制,并结合了地球的自转时间与原子钟的高精度度量。
  UTC是一个标准,而不是一个时区。UTC 是一个全球通用的时间标准。全球各地都同意将各自的时间进行同步协调 (coordinated),这也是 UTC 名字的来源:Universal Coordinated Time。

  >UTC时间 与 CST时间(北京时间)

  UTC + 时区差 = 本地时间
  时区差东为正,西为负。在此,把东八区时区差记为 +0800,中国北京处于东8区

  UTC + (+0800) = 本地(北京)时间 (1)

  那么,UTC = 本地时间(北京时间))- 0800 (2)

 

2.创建日期对象

  > var dateObj = new Date()           不传参数默认获取当前日期和时间;或者传入表示特定日期的毫秒数; 或者传入特定日期和时间的字符串来创建对象(会自动调用Date.parse() 或者 Date.UTC()方法);

     注:new Date("2021-01-02") 这种格式在IE8下不支持,只能写 new Date("2021/01/02")不能只传年月

  Date.parse()和Date.UTC() 可以将传入的特定日期转化为表示特定日期的毫秒数

  Date.parse() 接受一个表示日期的字符串  如:2020-12-02

  Date.UTC() 的参数分别是 年份、基于0的月份、月中哪一天、小时数(0~23)、分钟、秒以及毫秒数

3.相关方法

  >Date.now() 方法返回当前日期的毫秒数

    +操作符可以获取Date对象的时间戳(可以比较两个日期相差天数), 所以可以分析代码的运行如下

    var start = +new Date();

    //调用函数

    var stop= +new Date();

    var result= stop - start;

 

  >toLocaleString()、toString()、valueOf()

    toLocaleString()方法会按照与浏览器设置的地区相适应的日期格式返回日期和时间(不会包含时区信息)

    toString()方法则通常返回带有时区信息的日期和时间

    valueOf()方法不返回字符串,而是返回日期的毫秒表示   (所以,可以使用比较操作符><=来比较日期值)

  >日期格式化方法

    toDateString()/toLocaleDateString()     以特定于实现的格式显示星期几、月、日和年  

    toTimeString()/toLocaleTimeString()     以特定于实现的格式实现时、分、秒和时区

    toUTCString()  以特定于实现的格式完整的UTC日期

  >去得或者设置日期值中特定部分的方法

    getFullYear()/setFullYear() ......

    

    

  

  

    

posted @ 2020-12-02 10:36  碗粥  阅读(171)  评论(0编辑  收藏  举报