Javascript 在safari中返回的新日期无效,但chrome?
新日期('2020-08-18 07:52')在Chrome中工作,它返回Javascript 在safari中返回的新日期无效,但chrome?,javascript,google-chrome,datetime,ecmascript-6,safari,Javascript,Google Chrome,Datetime,Ecmascript 6,Safari,新日期('2020-08-18 07:52')在Chrome中工作,它返回 Tue Aug 18 2020 07:52:00 GMT+0800 (Malaysia Time) 但是safari给了我无效的日期?解决这个问题的最好方法是什么?safari中的这个bug正在破坏我的整个应用程序。不需要工具/插件/软件包,我只需将收到的日期分开: var apiDate='2020-08-18 07:52' var[date,time]=apiDate.split(“”) 变量[年、月、日]=日期分
Tue Aug 18 2020 07:52:00 GMT+0800 (Malaysia Time)
但是safari给了我无效的日期?解决这个问题的最好方法是什么?safari中的这个bug正在破坏我的整个应用程序。不需要工具/插件/软件包,我只需将收到的日期分开:
var apiDate='2020-08-18 07:52'
var[date,time]=apiDate.split(“”)
变量[年、月、日]=日期分割('-'))
var[hour,minute]=time.split(“:”)
var newDate=新日期(年、月-1、日、小时、分钟、0)
//2020年8月18日星期二07:52:00
我只会小心时区,因为你的约会没有时区描述
注意
从上面的代码中,可能会认为这是无效的,但这是javascript的警告
“08”+1=“081”
"08" - 1 = 7
如果格式始终相同,还可以执行以下操作:
var apiDate='2020-08-18 07:52'
var newDate=newDate(`${apiDate.replace(''T')}:00`)/'2020-08-18T07:52:00'
//2020年8月18日星期二07:52:00
无需工具/插件/软件包,我只需将收到日期分开:
var apiDate='2020-08-18 07:52'
var[date,time]=apiDate.split(“”)
变量[年、月、日]=日期分割('-'))
var[hour,minute]=time.split(“:”)
var newDate=新日期(年、月-1、日、小时、分钟、0)
//2020年8月18日星期二07:52:00
我只会小心时区,因为你的约会没有时区描述
注意
从上面的代码中,可能会认为这是无效的,但这是javascript的警告
“08”+1=“081”
"08" - 1 = 7
如果格式始终相同,还可以执行以下操作:
var apiDate='2020-08-18 07:52'
var newDate=newDate(`${apiDate.replace(''T')}:00`)/'2020-08-18T07:52:00'
//2020年8月18日星期二07:52:00
如果我记得的话,Safari只支持。@AdamAzad我无法控制日期字符串,它来自api。我该怎么办?我会这样做:`${'2020-08-18 07:52'。替换(''T')}:00`
@AdamAzad,您仍然会看到Safari和其他产品之间的差异:-(ECMA-262不支持该格式,因此解析依赖于实现。Safari将其视为无效(可能是受支持格式的错误版本),其他人不支持。修复方法是使用简单的函数或库手动解析它。如果我记得,Safari只支持。@AdamAzad我无法控制日期字符串,它来自api。我该怎么办?我会这样做:`${2020-08-18 07:52'。替换(''t')}:00`
@AdamAzad,您仍然可以看到Safari与其他格式之间的差异。:-(ECMA-262不支持该格式,因此解析依赖于实现。Safari将其视为无效(可能是受支持格式的错误版本),其他人则不支持。修复方法是使用简单的函数或库手动解析它。