lodash forIn forOwn 遍历对象属性

.forIn(object, [iteratee=.identity])

使用 iteratee 遍历对象的自身和继承的可枚举属性。
100.对象遍历lodash forIn forOwn - 图1
function Foo() {
this.a = 1;
this.b = 2;
}

Foo.prototype.c = 3;

_.forIn(new Foo, function(value, key) {
console.log(key);
});
// => Logs ‘a’, ‘b’, then ‘c’ (无法保证遍历的顺序)。
100.对象遍历lodash forIn forOwn - 图2

.forOwn(object, [iteratee=.identity])

使用 iteratee 遍历自身的可枚举属性。
100.对象遍历lodash forIn forOwn - 图3
function Foo() {
this.a = 1;
this.b = 2;
}

Foo.prototype.c = 3;

_.forOwn(new Foo, function(value, key) {
console.log(key);
});
// => 输出 ‘a’ 然后 ‘b’ (无法保证遍历的顺序)。