我有一个对象数组。 我需要创建一个函数来返回if语句的特定对象键名。我目前正试图这样做:
<button onclick="isClick('curly_hair')"><u>curly</u></button>
这是我正在尝试的功能:
function isClick(value) {
for (i = 0; i < People.length; i++) {
if (People[i].options.value) {
//do stuff
}
这是我的对象数组
var People = [
{
name: "Bill",
img: "images/168-Cool-avatars/256x256_male-avatars_png/avatar-m-small-01.png",
options: {
curly_hair: false, long_hair: true, ...
},
},
详细说明:而不是需要创建&#34; if&#34;我的每个&#34;选项&#34;的陈述属性(curly_hair,long_hair等)我试图通过函数参数传递它。 如果我传递&#34; isClick(curly_hair)&#34;,我想返回Person数组中具有curly_hair的所有对象:true。
答案 0 :(得分:0)
由于值是变量,我们可以使用[]
代替.
运算符尝试这种方式
function isClick(value) {
for (i = 0; i < People.length; i++) {
if (People[i].options[value]) {
//do stuff
}
}
如果需要,最好还使用过滤器。
function isClick(value) {
return People.filter(function(obj){
return !!obj.options[value];
})
}