- 同时适用于数组和对象
function forEach(obj, fn) {
if (obj===null || typeof obj === 'undefined') {
return;
}
if (typeof obj !== 'object') {
obj = [obj];
}
if (isArray(obj)) {
for (var i=0, l=obj.length; i<l; i++) {
fn.call(null, obj[i], i, onj);
}
} else {
for (var key in obj) {
if (Object.prototype.hasOwnProperty.call(obj, key)) {
fn.call(null, obj[key], key, obj)
}
}
}
}