@Author:Outman
@Date:2023-03-27
与时间标准相关的知识记录
1.UTC(调和世界时间/世界统一时间/世界标准时间)
UTC指的是Coordinated Universal Time- 世界协调时间(又称世界标准时间、世界统一时间),是经过平均太阳时(以格林威治时间GMT为准)、地轴运动修正后的新时标以及以「秒」为单位的国际原子时所综合精算而成的时间,计算过程相当严谨精密,因此若以「世界标准时间」的角度来说,UTC比GMT来得更加精准。其误差值必须保持在0.9秒以内,若大于0.9秒则由位于巴黎的国际地球自转事务中央局发布闰秒,使UTC与地球自转周期一致。所以基本上UTC的本质强调的是比GMT更为精确的世界时间标准,不过对于现行表款来说,GMT与UTC的功能与精确度是没有差别的。UTC时间+时区偏移量就是当地时间,如北京东8区(GMT+8),则UTC时间+08小时就表示北京时间。
2.GMT(格林威治时间)
格林威治位于泰晤士河南岸,与北岸城镇通隧道和公路。1423年格洛斯特公爵亨天雷围建了格林尼治公园,在河畔山丘建了镃望塔,后又建造了格林威治皇家天文台。格林尼治天文台负责每隔一小时向全世界发放调时信息,由于地球每天的自转是有些不规则的,而且正在缓慢减速,因此格林威治平时基于天文观测本身的缺陷,已经被原子钟报时的世界协调时间(UTC)所取代。
3.CST(中部地区标准时间)
CST可视为美国、澳大利亚、古巴或中国的标准时间。CST可以为如下4个不同的时区的缩写:美国中部时间:Central Standard Time (USA) UT-6:00;澳大利亚中部时间:Central Standard Time (Australia) UT+9:30;中国标准时间:China Standard Time UT+8:00;古巴标准时间:Cuba Standard Time UT-4:00
ISO(国际标准化组织的国际标准ISO 8601)
上面三者均为时间标准,而ISO是日期和时间的表示方法。目前最新为第三版ISO8601:2004,第一版为ISO8601:1988,第二版为ISO8601:2000。年由4位数组成,以公历公元1年为0001年,以公元前1年为0000年,公元前2年为-0001年,其他以此类推。应用其他纪年法要换算成公历,但如果发送和接受信息的双方有共同一致同意的其他纪年法,可以自行应用。
const date = new Date();
console.log(date); // Mon Mar 27 2023 16:33:29 GMT+0800 (中国标准时间) ---Date类型,当地时区的时间
console.log(date.toString()); // 'Mon Mar 27 2023 16:33:29 GMT+0800 (中国标准时间)'---String类型,当地时区的时间
console.log(date.toUTCString()); // 'Mon, 27 Mar 2023 08:33:29 GMT'---UTC时间
console.log(date.toGMTString()); // 'Mon, 27 Mar 2023 08:33:29 GMT'---GMT时间
console.log(date.toDateString()); // 'Mon Mar 27 2023'---String类型,可读字符串形式的日期
console.log(date.toISOString()); // '2023-03-27T08:33:29.463Z'---ISO时间格式,尾部"Z"表示UTC时间, 不指定Z则表示当地时间
console.log(date.toLocaleString()); // '2023/3/27 16:33:29'---当地日期+时间
console.log(date.toLocaleDateString()); // '2023/3/27'---当地日期
console.log(date.toLocaleTimeString()); // '16:33:29'---当地时间