for..in
: 可以遍历数组下标,便利对象的key (功能同js)。
for..of
: 可以遍历数组内容(es6新语法)。
let someArray = [1, "string", false];
for (let entry of someArray) {
console.log(entry);
}
for (let entry in someArray) {
console.log(entry);
}
console.log("======");
let objc = { 1: "a", "hah": true };
for (let entry in objc) {
console.log(entry);
}
for..in可以便利object的key,可以配合delete进行删除。
let objc = { 1: "a", "hah": true };
for (let entry in objc) {
if (entry == "hah") {
delete objc[entry];
}
}
console.log(objc);
ps: delete只能删除自有属性,不影响原型链上的属性。