在IE中使用ES6箭头函数出现语法错误

7
我有这段JavaScript代码。
price = price.replace(/(.*)\./, x => x.replace(/\./g,'') + '.')

这在Firefox和Chrome中运行良好,但是IE会给我一个语法错误,指向我的代码中的=>

有没有办法在IE中使用ES6箭头语法?


2
直到IE想变得快乐,才在replace中使用匿名方法。 - Wiktor Stribiżew
3
使用转译器或直接编写 ES5 代码。 - Bergi
2个回答

21

IE不支持ES6,所以你必须坚持使用原始的编写函数的方式。

price = price.replace(/(.*)\./, function (x) {
  return x.replace(/\./g, '') + '.';
});

另外,相关链接:ES6 何时能在 IE 上使用?


4

Internet Explorer目前还不支持箭头函数。您可以在这里检查浏览器对箭头函数的支持情况。

解决方法是使用传统的回调函数:

price = price.replace(/(.*)\./, function (x) {
    x.replace(/\./g,'') + '.';
}

这将在每个浏览器中都有效。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接