[es6] for in与for of
- for in是遍历原型链上的所有的方法,为什么闭包里的匿名函数没有返回,后面的for循环也可以console.log呢?
'use strict'
var data = [];
for (var k = 0; k < 3; k++) {
(function (k){
data[k] = function () {
console.log('----' + k);
};
})(k);
}
for (var c in data) {
console.log(c);
}
输出 0 1 2
'use strict'
var data = [];
for (var k = 0; k < 3; k++) {
(function (k){
data[k] = function () {
console.log('----' + k);
};
})(k);
}
for (var c of data) {
c();
}
输出 ----0 ----1 ----2