Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何让luxon在时区中不使用冒号输出ISO日期格式_Javascript_Date_Datetime_Luxon - Fatal编程技术网

Javascript 如何让luxon在时区中不使用冒号输出ISO日期格式

Javascript 如何让luxon在时区中不使用冒号输出ISO日期格式,javascript,date,datetime,luxon,Javascript,Date,Datetime,Luxon,如何以以下格式使用luxon生成日期 2020-12-03T16:35:40.426+0100 我试着用 let format = "yyyy-MM-dd\'T\'HH:mm:ss.SSSZ" let str = date.toFormat(format) 但我明白了 2020-12-03T15:32:00.000+1 从 Z窄偏移量+5 ZZ短偏移量+05:00 ZZZ技术偏移量+0500 因此,您可以使用ZZZ以请求的格式发出偏移量 但是,请注意,以您所要求的方式

如何以以下格式使用luxon生成日期

2020-12-03T16:35:40.426+0100
我试着用

let format = "yyyy-MM-dd\'T\'HH:mm:ss.SSSZ"
let str = date.toFormat(format)
但我明白了

2020-12-03T15:32:00.000+1

Z窄偏移量+5
ZZ短偏移量+05:00
ZZZ技术偏移量+0500
因此,您可以使用
ZZZ
以请求的格式发出偏移量

但是,请注意,以您所要求的方式将其组合将生成一个不符合ISO 8601的字符串

ISO 8601(第4.3.2节)提供了两种有效格式,“基本”和“扩展”:

基本格式示例
YYYYMMDDThhmmss 19850412T101530
YYYYMMDDTHHMSSZ 19850412T101530Z
YYYYMMDDHHMMSS±hhmm 19850412T101530+0400
YYYYMMDDThhmmss±hh 19850412T101530+04
扩展格式示例
YYYY-MM-DDThh:MM:ss 1985-04-12T10:15:30
YYYY-MM-DDThh:MM:ssZ 1985-04-12T10:15:30Z
YYYY-MM-DDThh:MM:ss±hh:MM 1985-04-12T10:15:30+04:00
YYYY-MM-DDThh:MM:ss±hh 1985-04-12T10:15:30+04
大多数人使用扩展格式,有时您会发现基本格式(特别是在URL中)。但您已将扩展格式的日期和时间与基本格式的偏移量组合在一起,这是不受支持的组合


除非您出于某种原因被锁定,否则我建议使用基本格式或扩展格式。

尝试DateTime对象的toIso()方法,如中所述,它将timezoe输出为“01:00”,而不是“0100”。我找到了正确的格式字符串“yyyy-MM-dd\T\HH:MM:ss.SSSZZZ”“这只是为了让JIRA rest api高兴。出于某种原因,JIRA无法解析普通的8601,但需要我想要的格式。啊,是的。看来吉拉已经决定不解决这个问题了。或者他们至少应该在JSAPI中提供一些翻译功能。这浪费了我几个小时的时间。谢谢你在问题追踪器上窃听他们。