javascript 里面为什么不提供date的格式化函数?

关注者
3
被浏览
653

Firefox提供了格式化方法toLocaleFormat,其它浏览器暂不支持:

new Date().toLocaleFormat("%y/%m/%d"); new Date("2015,2,14").toLocaleFormat("%y-%m-%d"); new Date(1391012219050).toLocaleFormat();

Date.prototype.toLocaleFormat()

------------

回来更新一下,toLocaleFormat作为Firefox私有方法已经要废弃了。不过

Date.prototype.toLocaleString()

Date.prototype.toLocaleDateString()

Date.prototype.toLocaleTimeString()

这三个Standard方法,由于增加提供了locales and options arguments,可以用于支持格式化。

具体使用方式看文档,这里不说了,和你想象中的大不一样,相信以后也会做改进。

另外,ECMA还提供了一个Intl(Internationalization)对象,也可以做日期、时间、数字的格式化(DateTimeFormat、NumberFormat),使用方式类似。


浏览器支持度上面,Date的toLocalString 和 Intl的DateTimeFormat 在PC端都没问题了,在Android 自带浏览器上表现不是很好。