通过 if 语句的函数参数传递对象 属性
Pass object property through function parameter for if statement
我有一组对象。
我需要创建 1 个函数,该函数 returns 是 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, ...
},
},
详细说明:无需为我的每个 "option" 属性(curly_hair、long_hair 等)创建 "if" 语句,我正在尝试而是通过函数参数传递它。
如果我传递 "isClick(curly_hair)",我想 return Person 数组中具有 curly_hair 的所有对象:true.
因为 value 是一个变量,我们可以使用 []
而不是 .
运算符尝试这种方式
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];
})
}
我有一组对象。 我需要创建 1 个函数,该函数 returns 是 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, ...
},
},
详细说明:无需为我的每个 "option" 属性(curly_hair、long_hair 等)创建 "if" 语句,我正在尝试而是通过函数参数传递它。 如果我传递 "isClick(curly_hair)",我想 return Person 数组中具有 curly_hair 的所有对象:true.
因为 value 是一个变量,我们可以使用 []
而不是 .
运算符尝试这种方式
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];
})
}