js 二維數組查找 - 根據屬性值查找對應的另一個屬性值

在我們使用js的時候是否會常常碰到這種問題:

我們想查找一個二維數組中id==1的name的值,js好像沒有提供相應的函數,這個時候只能自己寫一個工具函數了,下面是方法

var data = [
    {id: 1,name: "張三", sex: "男"},
    {id: 2,name: "李四", sex: "男"},
    {id: 3,name: "王五", sex: "男"},
    {id: 4,name: "馬六", sex: "女"},
    {id: 5,name: "陳七", sex: "男"}
];

//我想查找id==1的人的name是什麼
var name = arrayLookup(data,'id',1,'name');

function arrayLookup(data,key,value,targetKey){
    var targetValue = "";
    for (var i = 0; i < data.length; i++) {
        if(data[i][key]==value){
            targetValue = data[i][targetKey];
            break;
        }
    }
    return targetValue;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章