js如何查找name为‘小红’的下标?

数据是这样的:

var obj = [
    {
        id:1,
        name:"小明"
    },
    {
        id:2,
        name:"小红"
    },
    {
        id:3,
        name:"小雷"
    }];

我现在想知道name为‘小红’的下标是多少

//数组,要找的字段,要找的内容function findIndex(arr,key,word){
    arr.map((o,n)=>{        if(o[key] == word){            return n;
        }
    })
}var t = findIndex(obj,'name','小红');console.log(t); //underfine


千万里不及你
浏览 461回答 2
2回答

临摹微笑

map中的return是返回到map数组当中。即题中arr.map跑完时被赋值为[undedined,1,undefined]。所以你的findindex返回的是一个空值。你可以在arr.map之前加一个return就可以看到返回值值了。可以改成这个样子,就可以了。function findIndex(arr,key,word){     arr.map((o,n)=>{        if(o[key] == word){            console.log(n);         }     }); }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript