-
函数嵌套
-
内部函数引用外部函数的数据
// 示例
for (var i = 1; i <= 10; i++) {
setTimeout(function () {
console.log(i)
}, 1000)
}
// 11, 11, 11, 11 11, 11, 11, 11, 11, 11
for (var i = 1; i <= 10; i++) {
(function (j) {
setTimeout(function () {
console.log(j)
}, 1000)
})(i)
}
// 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
for (let i = 1; i <= 10; i++) {
setTimeout(function () {
console.log(i)
}, 1000)
}
// 1, 2, 3, 4, 5, 6, 7, 8, 9, 10