2014-09-04 27 views
-4

對於每個具有按鈕的技能數組對象。例如:如果我點擊skill_id En77如何爲該特定技能數組對象添加一個屬性(certification_category)。如何使用javascript在特定數組對象中添加單個屬性

{ 

"_id": "employee_skill_doc", 
"_rev": "532-927e8b9f17cfea9642a0380e0fa9a0e3", 
"skills": [ 
    { 
     "skill_name": "SDS/2", 
     "skill_id": "En77", 
     "skill_set_id": "c16", 
     "skill_set": "Structural Analysis", 
     "skill_sub_ID": "b07", 
     "skill_cat_ID": "a01" 
    }, 
    { 
     "skill_name": "Adobe Flash Catalyst", 
     "skill_id": "Te369", 
     "skill_set_id": "c90", 
     "skill_set": "Prototyping Tools", 
     "skill_sub_ID": "b26", 
     "skill_cat_ID": "a03" 

    } 

]) 

這裏提到的預期輸出

{ 

"_id": "employee_skill_doc", 
"_rev": "532-927e8b9f17cfea9642a0380e0fa9a0e3", 
"skills": [ 
    { 
     "skill_name": "SDS/2", 
     "skill_id": "En77", 
     "skill_set_id": "c16", 
     "skill_set": "Structural Analysis", 
     "skill_sub_ID": "b07", 
     "skill_cat_ID": "a01", 
     「certification_category」:」1」 
    }, 

    { 
     "skill_name": "Adobe Flash Catalyst", 
     "skill_id": "Te369", 
     "skill_set_id": "c90", 
     "skill_set": "Prototyping Tools", 
     "skill_sub_ID": "b26", 
     "skill_cat_ID": "a03" 

    }] 
} 
+0

您可以使用obj.prop ='value'.... – 2014-09-04 10:39:15

+0

爲什麼downvotes爲? – 2014-09-04 10:46:31

回答

0

這將做你想做的。不好的做法使用下劃線標記。不需要用引號括起對象鍵。

var length = objName.skills.length, 
    i; 

for (i = 0; i < length; i++) { 
    if (objName.skills[i].skill_id === 'En77') { 
     objName.skills[i].certification_category = '1'; 
     break; 
    } 
} 
0

下面的循環將找到與給定的skill_id技能,然後你可以添加任何你想要的。

for(i = 0; i<blah.skills.length; i++){ 

    var skill = blah.skills[i]; 

    if(skill.skill_id == "En77"){ 

     skill.certification_category = "1"; 
     /// add whatever you want 
     break; 
    } 

} 
相關問題