为了账号安全,请及时绑定邮箱和手机立即绑定

在线等!为什么 JS 中的 new Date("0") 返回的是2000年,而不是1970年?谢谢哈~

在线等!为什么 JS 中的 new Date("0") 返回的是2000年,而不是1970年?谢谢哈~

MMTTMM 2019-09-09 20:29:12
console.log(newDate(0));VM655237:1ThuJan01197008:00:00GMT+0800(中国标准时间)console.log(newDate("0"));VM655252:1SatJan01200000:00:00GMT+0800(中国标准时间)
查看完整描述

2 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

参数是字符串的时候,会使用Date.parse,而其中咋解释字符串"0"是实现自己定义的。这与参数是数字的时候完全不同。
TheparsefunctionappliestheToStringoperatortoitsargument.IfToStringresultsinanabruptcompletiontheCompletionRecordisimmediatelyreturned.Otherwise,parseinterpretstheresultingStringasadateandtime;itreturnsaNumber,theUTCtimevaluecorrespondingtothedateandtime.TheStringmaybeinterpretedasalocaltime,aUTCtime,oratimeinsomeothertimezone,dependingonthecontentsoftheString.ThefunctionfirstattemptstoparsetheStringaccordingtotheformatdescribedinDateTimeStringFormat(20.3.1.15),includingexpandedyears.IftheStringdoesnotconformtothatformatthefunctionmayfallbacktoanyimplementation-specificheuristicsorimplementation-specificdateformats.Stringsthatareunrecognizableorcontainout-of-boundsformatfieldvaluesshallcauseDate.parsetoreturnNaN.
                            
查看完整回答
反对 回复 2019-09-09
  • 2 回答
  • 0 关注
  • 334 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信