所以我使用 Javascript const 关键字,在 IE 中会发生什么?
So i'm using Javascript const keyword, what happens in IE?
我知道 const 关键字已经在除 IE10 版本之外的浏览器中全面实现,但是它可行吗?如果有人在 IE10 上跳转到我的网站< "const" 关键字会被重新分配给 "var" 吗?如果不是,整个站点会失败吗?关于 const 关键字的 MDN 文档在底部提供了一个方便的图表,它告诉我不仅 IE,而且许多移动浏览器也不支持它。我应该废弃它并使用 var 吗?
IE11及以上支持const
但IE10及以下不支持
如果您尝试在任何不支持它的浏览器中使用 const
,您将收到语法错误。如果您必须支持旧版浏览器,则不能使用 const
除非您使用转译器将代码编译成 ES5。 Babel 是此类转译器的一个很好的例子。
以 Babel、ECMAScript 2015 (ES6) 到 ECMAScript 5 转译器为例。
如果你写:
const a = 123;
它输出:
"use strict";
var a = 123;
如果在不受支持的浏览器上破坏您的代码的可能性还不够,我认为应该是。
如果你想使用 const
编写干净的 ES6 (ES2015) 代码,你可以使用像 Babel 这样的 JS 编译器。例如:
const a = 1;
它重新编译为
"use strict";
var a = 1;
如果你想要无痛的 babel 配置使用这个 yeoman babel generator.
我知道 const 关键字已经在除 IE10 版本之外的浏览器中全面实现,但是它可行吗?如果有人在 IE10 上跳转到我的网站< "const" 关键字会被重新分配给 "var" 吗?如果不是,整个站点会失败吗?关于 const 关键字的 MDN 文档在底部提供了一个方便的图表,它告诉我不仅 IE,而且许多移动浏览器也不支持它。我应该废弃它并使用 var 吗?
IE11及以上支持const
但IE10及以下不支持
如果您尝试在任何不支持它的浏览器中使用 const
,您将收到语法错误。如果您必须支持旧版浏览器,则不能使用 const
除非您使用转译器将代码编译成 ES5。 Babel 是此类转译器的一个很好的例子。
以 Babel、ECMAScript 2015 (ES6) 到 ECMAScript 5 转译器为例。
如果你写:
const a = 123;
它输出:
"use strict";
var a = 123;
如果在不受支持的浏览器上破坏您的代码的可能性还不够,我认为应该是。
如果你想使用 const
编写干净的 ES6 (ES2015) 代码,你可以使用像 Babel 这样的 JS 编译器。例如:
const a = 1;
它重新编译为
"use strict";
var a = 1;
如果你想要无痛的 babel 配置使用这个 yeoman babel generator.