Chrome和Firefox之间的日期差异

时间:2019-04-12 09:45:38

标签: javascript google-chrome date firefox

我使用相同的代码在Firefox和Chrome之间出现了奇怪的区别:

<div fxLayout="row" class="header-style" 
 [ngClass]="'dynamic_class'" fxFill>
        <div fxLayout="row" fxLayoutAlign="start center">
               dsfaSfdf
        </div>
</div>

<!-- following is different div in same html -->


<div fxLayout="row" class="footer-style"
 [ngClass]="'dynamic_class'" fxFill>
        <div fxLayout="row" fxLayoutAlign="start center">
                dsfsfsd
        </div>
</div>

在Chrome浏览器中,我得到了预期的结果:2019年5月4日

在Firefox中,我得到以下结果:2019-05-03

为什么Firefox第一天出门?

以下是两种浏览器中的控制台的屏幕截图:

Chrome: Chrome

Firefox: Firefox

1 个答案:

答案 0 :(得分:1)

这些是相同的日期/时间。区别在于,第一个在BST(英国夏令时,GMT + 0100)中显示给您,第二个在GMT中向您显示(末尾的Z告诉您)。

Date构造函数以本地时间构造日期,对于您来说,日期显然是BST(对我来说也是:-)。由于您尚未指定时间,因此默认为午夜。 Firefox只是向您显示了格林尼治标准时间,比格林尼治标准时间(BST)午夜早一小时,因此比前一天早。


旁注:提供给new Date的参数应该是数字,而不是字符串。尽管the date constructor会为您带来压力,但最好的方法是不要依赖它。