中国标准时间(China Standard Time),虽然找到了时区缩写的表格

基础的 Date() 就不说了~ :  )

后天在写代码时碰着了更该时区的标题,即使找到了时区缩写的表格,然则对时区缩写的案由却走马观花极度是意识时区缩写中并不曾PRC,于是在互连网找了弹指间,发掘那篇文章说得相比清楚,转过来

时区的退换:

怎么着获得有些月的天数?

不清楚大家碰到过那一个难题啊?小编想只要你们写过日期组件一定有那一个题目,作者立即的化解方案是如此的:

以下的多少个方法,month 参数笔者都根据 JS 本人对于 Date 的月度定义,选择0为11月

CST时间
Central 斯坦dard 提姆e (USA卡塔尔(قطر‎ UT-6:00 美利坚合众国行业内部时间
Central Standard Time (澳大曼海姆联邦State of Qatar UT+9:30 Australia标定期期
China Standard Time UT+8:00 中黄炎子孙民共和国正规时间
Cuba Standard Time UT-4:00 古巴专门的工作时间

  鸡血:

最忠诚的章程

const EVERY_MONTH_DAYS = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

function getDays(year, month) {
  if (month === 1 && isLeap(year)) return 29;
  return EVERY_MONTH_DAYS[month];
}

手动做了各种月天数的照耀,若是是十一月份并闰年,那天数+1

不论是安利四个团结写的 osx 上的日历插件 

那尚未更加好的措施吗?手动 map 和闰年决断的逻辑未有就好了。

===============================================================

     CST:中夏族民共和国职业时间(China Standard Time),那些解释可能是本着RedHat Linux。

微微 diao 一点的秘技

function getDays(year, month) {
  if (month === 1) return new Date(year, month, 29).getMonth() === 1 ? 29 : 28;
  return new Date(year, month, 31).getMonth() === month ? 31 : 30;
}

咱俩开掘,new Date()的第五个参数是能够超越大家所知的各类月的尾声一天的的,比方:

new Date(2016, 0, 200) //Mon Jul 18 2016 00:00:00 GMT+0800 (CST)

如此,大家就选用那几个 JS 的风味,用29和31这八个关键点,去判定除了那个月的尾声一天+1依旧特别月啊?(其实28和30是关键点卡塔尔(قطر‎。

一、时区   

    

再微微 diao 一点的办法

function getDays(year, month) {
  return new Date(year, month + 1, 0).getDate();
}

new Date()的第多个参数传小于1的值会如何了,比方传0,大家就得到了方今的最终一天,当然传负数也没难点:

new Date(2016, 0, -200) //Sun Jun 14 2015 00:00:00 GMT+0800 (CST)

PRC是时区的名号,它对应/usr/share/lib/zoneinfo下的PRC时区文件.CST是Chinese Standard Time的缩写,用在date命令的输出中.它是概念在PRC时区文件中.你看一下/usr/share/lib/zoneinfo/src下的asia文件就驾驭是怎么回事了.

    CST可以为如下4个不等的时区的缩写:
      U.S.A.中部时间:Central Standard Time (USA卡塔尔国 UT-6:00

Date.prototype.各种String

实际的文书档案解释懒得再复制一下给大家看,仿效链接:

此处关键和大家普遍以下文化:

安装时区的主意是: 修改/etc/default/init文件的TZ=xxx,然后必得重起.xxx应该对应/usr/share/lib/zoneinfo中的三个文件.CTT 是Time zone 的ID, 而 CST 是Timezone的短展现名。但短展示名与ID的呼应关系是一对多,
也便是说,类似采纳短显示名CST的ID还也会有CST(那只是ID),即Central Standard Time.

 

克拉霉素T(Green尼治平常卡塔尔

Green尼治平日(又称Green尼治平均时间或Green尼治标准时期,旧译格林威治标如时期;Slovak语:格林wich Mean Time,阿奇霉素T)是指位于United KingdomLondon杜集区的皇家Green尼治天文台的正经时间,因为本初子午线被定义在经过那里的经线。

自一九二三年十一月5日启幕,Green尼治天文台每间距半小时会向国内外发放调时新闻。

反对上的话,格林尼治标准时间的正午是指当阳光横越Green尼治子午线时(也正是在Green尼治上空最高点时)的流年。由于地球在它的椭圆轨道里的运动速度不均匀,那么些任何时候或许与事实上的日光时有固有误差,最大引用误差达16分钟。

由于地球每一日的自转是稍稍难堪的,况且正在缓慢减速,因而Green尼治时间已经不再被作为职业时间利用。现在的正经八百时间,是由手表报时的和睦世界时(UTC)。

由此大家也从 MDN 上的文书档案看见对于toGMTString()的解释是:

Returns a string representing the Date based on the GMT (UT) time zone. Use toUTCString() instead.

之所以Wed Aug 28 15:05:59 CST 二〇〇三是正确的,因为时区是PRC,所以这里短显示名CST代表的ID是CTT。

      澳洲之中时间:Central Standard Time (澳国卡塔尔国 UT+9:30

UTC(世界标依期期卡塔尔

协和世界时,又称世界标按期期或世界和睦时间,简单称谓UTC(从英语「Coordinated Universal Time」/立陶宛共和国语「Temps Universel Cordonné」而来),是最器重的世界时间标准,其以原卯时秒长为底工,在时刻上竭尽左近于Green尼治平常

二、时间

 

CST(巴黎时间卡塔尔国

东京(Tokyo卡塔尔国时间,China Standard Time,中中原人民共和国行业内部时间。在时区划分上,属东八区,比和谐世界时早8小时,记为UTC+8。

但是那几个CST那些缩写相比纠葛的是它能够何况表示八个不相同的时辰:

  • 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

插贰当中华夏族民共和国地区 JS 客户端时间和服务端时间不等同的难题

计算正是,前后端去传时间的时候,尽量都用 UTC 时间。

在不休憩服务的情况下得以修正系统时间,用root顾客登入后改良。改进时间就用date命令就能够.

      中黄炎子孙民共和国正式时间:China Standard Time UT+8:00

ISO 日期和时间的象征方法

if ( !Date.prototype.toISOString ) {
  ( function() {

    function pad(number) {
      if ( number < 10 ) {
        return '0' + number;
      }
      return number;
    }

    Date.prototype.toISOString = function() {
      return this.getUTCFullYear() +
        '-' + pad( this.getUTCMonth() + 1 ) +
        '-' + pad( this.getUTCDate() ) +
        'T' + pad( this.getUTCHours() ) +
        ':' + pad( this.getUTCMinutes() ) +
        ':' + pad( this.getUTCSeconds() ) +
        '.' + (this.getUTCMilliseconds() / 1000).toFixed(3).slice(2, 5) +
        'Z';
    };

  }() );
}

透过 Polyfill 我们就会了然 ISO 是怎么表示时间的,最入眼的性状是最后一位是“Z”,然后表示的接连 UTC 时间。

格式为:date mmddHHMMYYYY.SS,月日时分年.秒。

 

外加的互补

 

      古巴标准时间:Cuba Standard Time UT-4:00

.valueOf() 和 .getTime()

.valueOf()的效果和.getTime()一样。

该格局日常在 JavaScript 内部被调用,并非在代码中显式调用。什么看头?未有 valueOf,那么Date的实例是无法开展览演出算的。

var obj = Object.create(null);
obj + 1; // Uncaught TypeError: Cannot convert object to primitive value(…)

 

 

.toJSON

一直看这几个 API 的名字的时候,作者感觉会回去叁个 JSON 格式的字符串,但事实上是那般三个东西

new Date().toJSON() // "2016-05-05T06:03:28.130Z"

实乃这么回事

JSON.stringify(new Date()) // ""2016-05-05T06:06:02.615Z""

那结果能够被 parse 吗?

JSON.parse(JSON.stringify(new Date())) // "2016-05-05T06:19:24.766Z"
JSON.parse('"' + new Date().toJSON() + '"') // "2016-05-05T06:19:24.766Z"

而是结果只是字符串而已。必要再讲这么些字符串交给 new Date() 才行。

三、

    UTC:和谐世界时,又称世界标依期间,简单的称呼UTC,从土耳其语国际时间/韩中华全国文艺界抗击敌人协会调时间”Universal 提姆e/Temps Cordonné”而来。中华夏族民共和国民代表大会洲、香港(Hong Kong卡塔尔、多特蒙德、云南、蒙古国、新嘉坡、马拉西亚、菲律宾、Australia北边的年华与UTC的时差均为+8,也等于UTC+8。

.toLocaleFormat()

不归于其余正规。在JavaScript 1.6中被完结。就好像也独有 Firefox 谦和这几个API,其实正确姿势是用.toLocaleDateString()

何以用date命令时显示时区为CST?如:

 

.toLocale各种String()

.toLcale各种String(locales [, options]])

妈的这些 API 有一点烦,看 MDN 的文书档案你就了然。那一个 API 是用来本地化时间的。

此地微微说下自个儿对这一个参数的领悟:

 

     氯霉素T:Green尼治标准期期(旧译Green威治平均时间或Green威治标如时期;保加布兰太尔语:Greenwich Mean Time,维生霉素T)是指坐落于大不列颠及苏格兰联合王国London萧县的皇室Green尼治天文台的正统时间,因为本初子午线被定义在经过这里的经线。

locales

var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));

// formats below assume the local time zone of the locale;
// America/Los_Angeles for the US

// US English uses month-day-year order
alert(date.toLocaleString("en-US"));
// → "12/19/2012, 7:00:00 PM"

// British English uses day-month-year order
alert(date.toLocaleString("en-GB"));
// → "20/12/2012 03:00:00"

// Korean uses year-month-day order
alert(date.toLocaleString("ko-KR"));
// → "2012. 12. 20. 오후 12:00:00"

// Arabic in most Arabic speaking countries uses real Arabic digits
alert(date.toLocaleString("ar-EG"));
// → "٢٠‏/١٢‏/٢٠١٢ ٥:٠٠:٠٠ ص"

// for Japanese, applications may want to use the Japanese calendar,
// where 2012 was the year 24 of the Heisei era
alert(date.toLocaleString("ja-JP-u-ca-japanese"));
// → "24/12/20 12:00:00"

// when requesting a language that may not be supported, such as
// Balinese, include a fallback language, in this case Indonesian
alert(date.toLocaleString(["ban", "id"]));
// → "20/12/2012 11.00.00"

locales所指的地段的时区和语言输出。

 

  如何查看系统的时区:

options

  • localeMatcher 选用地面相配的什么算法,就像是没什么大用
  • timeZone 再设置下 UTC 时区
  • hour12 是否12小时制
  • formatMatcher 各日期时间单元的格式化
    • weekday Possible values are "narrow", "short", "long".
    • era Possible values are "narrow", "short", "long".
    • year Possible values are "numeric", "2-digit".
    • month Possible values are "numeric", "2-digit", "narrow", "short", "long".
    • day Possible values are "numeric", "2-digit".
    • hour Possible values are "numeric", "2-digit".
    • minute Possible values are "numeric", "2-digit".
    • second Possible values are "numeric", "2-digit".
    • timeZoneName Possible values are "short", "long".

栗子:

var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));

date.toLocaleString("en-US", {hour12: false}); // "12/19/2012, 19:00:00"

var options = {timeZoneName:'long',weekday: "long", year: "2-digit", month: "narrow", day: "numeric"};
date.toLocaleString("en-US", options); // "Thursday, D 20, 12, China Standard Time"

插三个JavaScript 突显 Y-m-d H:i:s 的日卯时间格式

 

  

规矩的秘技

let date = new Date();
let result = [
  [
    date.getFullYear(),
    date.getMonth() + 1,
    date.getDate()
  ].join('-'),
  [
    date.getHours(),
    date.getMinutes(),
    date.getSeconds()
  ].join(':')
].join(' ').replace(/bdb/g, '0$&');

代码:

[root@iZ280vf4sdpZ ~]# date
Sun Jan 15 22:45:48 CST 2017

diao 一点的措施

var date = new Date();
var result = date.toLocaleString('zh-CN', { hour12: false })
  .replace(///g, '-').replace(/bdb/g, '0$&');

 

一对可行的小时库

$dateThu Dec 22 08:50:55 CST 2005

  CST 就是象征时区


  时区的校订:

而作者的时区是设为北京的:

  

代码:

 


 

$cat /etc/timezoneAsia/Shanghai

  1卡塔尔国 找到呼应的时区文件 /usr/share/zoneinfo/Asia/Shanghai,用这么些文件替换当前的/etc/localtime文件。


  

localtime也是指向的香江:

cp   /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

代码:

  2) 修改/etc/sysconfig/clock文件,修改为:


   

/etc$ ll localtimelrwxrwxrwx  1 root root 33 Aug 11 21:37 localtime -> /usr/share/zoneinfo/Asia/Shanghai

ZONE="Asia/Shanghai"
UTC=false
ARC=false

  

    CST - 中华夏族民共和国正式时间 
   CST - 美利坚同盟友中心标准期间  

  

1、GMT(Greenwich Mean TimeState of QatarGreen威治标定期间
英帝国伦敦的地面时间。
2、UTC(Universal Time Coordinated卡塔尔通用协和时,同UT
UTC与Green威治标按时期(丙胺博莱霉素T, Greenwich Mean 提姆e卡塔尔(قطر‎同样,都与英帝国London的本地时相通。
3、CST时间
Central Standard 提姆e (USA卡塔尔国 UT-6:00 U.S.专门的职业时间
Central Standard Time (澳国卡塔尔 UT+9:30 澳洲标准时间
China Standard Time UT+8:00 中夏族民共和国行业内部时间
Cuba Standard Time UT-4:00 古巴标准时间
透过Java获取的CST时间用的是China Standard Time(UT+8:00State of Qatar,而客商端JavaScript则暗中认可使用的是United States的中部时间Central Standard Time (USA卡塔尔(UT-6:00卡塔尔。
4、整个地球分为22个时区,每一个时区都有本人的本地时间。
UTC + 时区差 = 本地时间
京城时区是东八区,当先UTC多个时辰。
时区差东为正,西为负。举个例子,东八区(东方之珠)是 +0800,西五区(London)是-0500,加利福尼亚州是西八区,是-0800,美利坚同盟友中段时区是西六区,-0600,
米利坚山地时区是西七区,-0700,太平洋时 区是西八区,-0800,在九夏使用夏时制,成为-0700。德意志时区是东一区,+0100,夏天变为+0200。
时区差东为正,西为负。在这里,把东八区时区差记为 +0800,
UTC + (+0800卡塔尔国 = 巴黎时间
UTC + (-0500State of Qatar = 伦敦时光
东方之珠时间 = London时间 + 1300
新加坡时间Date:Thur,08 Oct 2010 09:32:30 +08:00
09+24-13=20
London时刻Date:Thur,07 Oct 2008 20:32:30 -05:00
5、Java中取的CST时间是友好邻邦行业内部时间。
Thu Oct 08 11:41:02 CST 二〇〇八行使的是炎黄的CST标如时期
public static void cst2gmt(Date date) {
DateFormat nowFormat = new SimpleDateFormat();
DateFormat cstFormat = new SimpleDateFormat();
DateFormat gmtFormat = new SimpleDateFormat();
TimeZone nowTime = TimeZone.getTimeZone(”GMT+8:00″);
TimeZone gmtTime = TimeZone.getTimeZone(”GMT”);
TimeZone cstTime = TimeZone.getTimeZone(”CST”);
cstFormat.setTimeZone(gmtTime);
gmtFormat.setTimeZone(cstTime);
nowFormat.setTimeZone(nowTime);
System.out.println(”NOW Time: ” + nowFormat.format(date));
System.out.println(”GMT Time: ” + cstFormat.format(date));
System.out.println(”CST Time: ” + gmtFormat.format(date));
}
举行理并了结果如下:
NOW Time: 09-10-8 下午7:41
GMT Time: 09-10-8 上午11:41
CST Time: 09-10-8 上午6:41
Thu Oct 08 19:41:02 CST 2009
Thu Oct 08 11:41:02 CST 2009
JavaScript中取的CST时间是美利坚合众国职业时间:
09+24-14=19:00
Thu Oct 08 19:45:46 CST 二〇〇九表示的是Fri Oct 9 09:45:46 UTC+0800 2010的神州标定时期
< --script LANGUAGE="JavaScript">

时间的修改:

 

首先种状态:

 

  在联网状态下,直接使用ntpdate 命令就能够协作反常间间

时区缩写:

[root@web113 ~]# ntpdate
-bash: /usr/sbin/ntpdate: No such file or directory

标准时间代码

与GMT的偏移量

描述

NZDT

+13:00

新西兰夏令时

IDLE

+12:00

国际日期变更线,东边

NZST

+12:00

新西兰标准时间

NZT

+12:00

新西兰时间

AESST

+11:00

澳大利亚东部夏时制

CST(ACSST)

+10:30

中澳大利亚标准时间

CADT

+10:30

中澳大利亚夏时制

SADT

+10:30

南澳大利亚夏时制

EST(EAST)

+10:00

东澳大利亚标准时间

GST

+10:00

关岛标准时间

LIGT

+10:00

澳大利亚墨尔本时间

CAST

+9:30

中澳大利亚标准时间

SAT(SAST)

+9:30

南澳大利亚标准时间

WDT(AWSST)

+9:00

澳大利亚西部标准夏令时

JST

+9:00

日本标准时间,(USSR Zone 8)

KST

+9:00

韩国标准时间

MT

+8:30

毛里求斯时间

WST(AWST)

+8:00

澳大利亚西部标准时间

CCT

+8:00

中国沿海时间(北京时间)

JT

+7:30

爪哇时间

IT

+3:30

伊朗时间

BT

+3:00

巴格达时间

EETDST

+3:00

东欧夏时制

CETDST

+2:00

中欧夏时制

EET

+2:00

东欧,(USSR Zone 1)

FWT

+2:00

法国冬时制

IST

+2:00

以色列标准时间

MEST

+2:00

中欧夏时制

METDST

+2:00

中欧白昼时间

SST

+2:00

瑞典夏时制

BST

+1:00

英国夏时制

CET

+1:00

中欧时间

DNT

+1:00

Dansk Normal Tid

FST

+1:00

法国夏时制

MET

+1:00

中欧时间

MEWT

+1:00

中欧冬时制

MEZ

+1:00

中欧时区

NOR

+1:00

挪威标准时间

SET

+1:00

Seychelles Time

SWT

+1:00

瑞典冬时制

WETDST

+1:00

西欧光照利用时间(夏时制)

GMT

0:00

格林威治标准时间

WET

0:00

西欧

WAT

-1:00

西非时间

NDT

-2:30

纽芬兰(新大陆)白昼时间

ADT

-03:00

大西洋白昼时间

NFT

-3:30

纽芬兰(新大陆)标准时间

NST

-3:30

纽芬兰(新大陆)标准时间

AST

-4:00

大西洋标准时间(加拿大)

EDT

-4:00

(美国)东部夏令时

CDT

-5:00

(美国)中部夏令时

EST

-5:00

(美国)东部标准时间

CST

-6:00

(美国)中部标准时间

MDT

-6:00

(美国)山地夏令时

MST

-7:00

(美国)山地标准时间

PDT

-7:00

(美国)太平洋夏令时

PST

-8:00

(美国)太平洋标准时间

YDT

-8:00

Yukon夏令时

HDT

-9:00

夏威仪/阿拉斯加白昼时间

YST

-9:00

Yukon标准时

AHST

-10:00

夏威仪-阿拉斯加标准时间

CAT

-10:00

中阿拉斯加时间

NT

-11:00

州时间(Nome Time)

IDLW

-12:00

国际日期变更线,西边

  yum安装ntpdate 工具包   

 

yum install -y ntpdate

  在网络没失常的动静下:

  

[root@web113 ~]# ntpdate time.windows.com
15 Jan 22:28:12 ntpdate[1588]: step time server 40.118.103.7 offset 5.003850 sec

  第三种办法:

  手动情势 date -s 时间格式 【此种形式略】

  将时刻写入CMOS的操作,那就是写入硬件的操作 

  

clock -w 

  查看CMOS中的硬件时间:

[root@web113 ~]# clock --show
Sun 15 Jan 2017 10:35:19 PM CST  -0.438400 seconds

  

  hwclock 命令恐怕 clock 

  个中,clock和hwclock用法周边,只用一个就能够,只然则clock命令除了扶助x86硬件系统外,还帮忙Alpha硬件系统。

 

越多关于时间的设置音讯,能够参考:

  

  

  

本文由美高梅4688官方网站发布于最新话题,转载请注明出处:中国标准时间(China Standard Time),虽然找到了时区缩写的表格

您可能还会对下面的文章感兴趣: