1

我想使用var关键字在 javascript 中创建一个块范围的变量。
我不想使用let关键字创建。因为它不会支持所有浏览器。
有没有办法通过一些最好和通用的方式来实现这一点?

用例:我想在 for 循环中使用它,以便每次迭代都会创建一个新范围。

4

1 回答 1

1

使用 IIFE 创建一个“块”,如下所示:

(function () {
  var x = "whatever";
  // x is scoped to only within this "block"
  // block code
})()

在 for 循环中使用以维护范围:

for (var i = 0; i < l; i++) {
  (function (i) {
    var x = "whatever";
    // x is scoped to only within this "block"
    // block code
  })(i)
}
于 2016-05-04T05:44:47.197 回答