const 的 Polyfill(kindof)?

Polyfill (kindof) for const?

实际上我正在处理让我的代码在 IE 中工作的问题。不幸的是,这仍然是必要的。

不受支持的方法的 Polyfill 工作正常。 但我想知道,如何/如果我能让 "const" 和 "let" 工作。有什么办法吗?

关于箭头函数的相同问题可能更难。

此致,克里斯蒂安

您不能 polyfill 语法更改语言。但是您可以使用 将使用新语法的代码 转译为使用旧语法的代码,使用 Babel or Traceur 等工具,然后 运行 在IE。他们编译(或 "transpile")使用 ES2015+ 功能编写的代码,将其编译为仅使用 ES5 级功能编写的代码(通常与 polyfill 结合使用)。

例如,这段代码使用了箭头函数:

Nifty.prototype.setupHandler = function() {
    this.element.addEventHandler("click", e => {
        ++this.clicks;
    });
};

被 Babel 转译为:

Nifty.prototype.setupHandler = function () {
    var _this = this;

    this.element.addEventHandler("click", function (e) {
        ++_this.clicks;
    });
};

Example