我想使用 var 关键字在javascript中创建一个块范围变量。
我不想使用 let 关键字ecma6创建。因为它不支持所有浏览器
有没有办法通过一些最佳和通用的方式实现这一目标?
usecase:我想在for循环中使用它,这样每次迭代都会创建一个新的范围。
答案 0 :(得分: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)
}