如何获取与另一个给定值匹配的JSON对象的键值?

时间:2012-04-08 00:26:01

标签: javascript json

我有这个JSON:

var projects_array = new Array(
{name:"myName1", id:"myid1", index:1},
{name:"myName2", id:"myid2", index:2},
{name:"myName3", id:"myid3", index:3},  

);

我需要获取与特定“id”值匹配的对象的“index”值。所以如果我的“id”是“myid1”,你就会得到“1”。

这是我的代码的一部分:

 var myid = $(this).attr('id'); //this is the id value

projects_array.map(function (proj) {
    if (proj.id == myid) {
        return proj   // returns Undefined  
    } 
   }); 

最后,我需要在变量中分配该值以便以后使用它,谢谢:)

1 个答案:

答案 0 :(得分:3)

我认为您正在成功选择索引,但是当您返回该值时,它将进入一个新数组(如果您愿意,则“映射”在那里)。尝试这样的事情:

var myproj; 
var myindex;
projects_array.map(function (proj) {
    if (proj.id == myid) {
        myproj = proj;
        myindex = proj.index;
    } 
});