function forEach(obj, fn) {
if (obj instanceof Array) {
obj.forEach(function (item, index) {
fn(index, item)
})
} else {
for (key in obj) {
if (obj.hasOwnProperty(key)) {
fn(key, obj[key])
}
}
}
}
var arr = [1, 2, 3, 4, 5]
forEach(arr, function (index, item) {
console.log(index, item)
})
var obj = { "a": 1, "b": 2, "c": 3 }
forEach(obj, function (key, item) {
console.log(key, item)
})