IE 11问题用JavaScript toLocaleDateString()格式化

时间:2014-08-13 19:16:51

标签: javascript internet-explorer

我正在使用JavaScript Date函数toLocaleDateString()将我的日期格式化为8/13/2014,但出于某种原因,当我尝试通过API调用发送此值时执行JSON.stringify和然后AJAXing该值,IE决定将实际值更改为?8?/?30?/?2014 ..这显然会导致后端出错。

为什么IE会这样做,我该如何解决?

1 个答案:

答案 0 :(得分:3)

看起来这是IE 11中引入的一个错误.IE 11使用Unicode字符,所以你看到的是U+200E 'LEFT-TO-RIGHT MARK'

作为解决此问题的临时解决方案,您可以做的是替换该char。像这样:

console.log((new Date()).toLocaleDateString().replace(/\u200E/g, ''));