写一个能遍历数组和对象的forEach函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写一个能遍历数组和对象的forEach函数相关的知识,希望对你有一定的参考价值。

forEach函数遍历数组:

var arr = [1,2,3];
arr.forEach (function (item, index) {
    console.log (index,item)
})

forEach函数遍历对象:

var obj = {
    x: 100,
    y: 200,
    z: 300
}
var key;
for (key in obj){
    if (obj.hasOwnProperty (key)) {
        console.log (key,obj[key])
    }
}

能遍历二者的forEach函数

function forEach (obj, fn) {
    var key;
    if (obj instanceof Array) {
        obj.forEach (function (item, index) {
            fn (item,index)
        })
    } else {
        for (key in obj) {
            if (obj.hasOwnProperty (key)){
                fn (key, obj[key])
            }
        }
    }
}
var arr = [1, 2, 3];
var obj = {
    x: 100,
    y: 200,
    z: 300
}
forEach (arr, function (item, index) {
    console.log (index,item)
})
forEach (obj, function (key, val) {
    console.log (key, val)
})

 

以上是关于写一个能遍历数组和对象的forEach函数的主要内容,如果未能解决你的问题,请参考以下文章

php foreach只能遍历数组么

关于数组的一些经常使用函数

C#的foreach函数问题

java foreach是不是能对jsonarray进行遍历

java foreach是不是能对jsonarray进行遍历

Object.keys() 遍历对象