Pourquoi
Date.parse('2017-06-18'); //1497744000000
Date.parse('2017-6-18'); //1497715200000
Le nombre de millisecondes renvoyées est différent??
Following the voice in heart.
La spécification JavaScript garantit le comportement de new Date("2017-06-18"). new Date("2017-6-18") n'est pas conforme au format de spécification et le navigateur peut tout faire (y compris interpréter dans différents fuseaux horaires
) ;Chrome traite l'analyse de ces formats différemment - Firefox ne le fait pas - il est donc recommandé d'utiliser les formats de date dans la spécification et de ne pas compter sur le navigateur pour gérer les formats "non standard"
Veuillez écrire le code conformément aux spécifications?!
new Date
和 Date.parse
使用的是同樣的解析規(guī)律,只是一個(gè)返回 Date object
另一個(gè)返回毫秒數(shù),我們使用new Date
Pour illustrer le problème?:
console.log(new Date('2017-06-18')) // Sun Jun 18 2017 08:00:00 GMT+0800 (CST)
console.log(new Date('2017-6-18')) // Sun Jun 18 2017 00:00:00 GMT+0800 (CST)
C'est exactement 8 heures de différence, donc le nombre de millisecondes renvoyées est différent.