toLocaleDateString()

在处理时间问题的时候,遇到了一个bug,关于toLocaleDateString()在不同浏览器下的解析结果。

代码如下

浏览器解析结果如下

可以看到谷歌,火狐等浏览器的输出结果是这种格式的   *2017/1/26*,

但是在测试兼容性问题的时候发现,ie有了bug,原因是其日期的toLocaleDateString()输出的结果是:*2017年01月26日*。

也就是说格式不对。所以用toLocaleDateString()这个方法无法达到兼容效果。后来用valueOf()或者getTime()替换toLocaleDateString(),做了对应的处理就可以了。

关于valueOf()

定义和用法
valueOf() 方法返回 Date 对象的原始值。

该原始值由 Date 对象派生的所有对象继承。

valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。
返回值
date 的毫秒表示。返回值和方法 Date.getTime 返回的值相等。

关于getTime()

定义和用法
getTime() 方法可返回距 1970 年 1 月 1 日之间的毫秒数。
返回值
dateObject 指定的日期和时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数。

注释:该方法总是结合一个 Date 对象来使用。
原文地址:https://www.cnblogs.com/clearsky/p/6370317.html