我可以使用对象的字符串值数组在 jade 中创建动态变量名吗?
Can I create dynamic variable names in jade using an array of string values for an object?
我有一个名为 values
的值数组。我有一个 each
声明我正在遍历数组。在 each
语句中,我使用 for 循环遍历对象数组。当我遍历对象时,我想检查并查看它们是否有一个 true
布尔变量,该变量与我的值数组中的项目名称相同。
- var values = ["u10","u11","u14","u17","u18"];
each val in values.length ? values : ['There are no values']
-for obj in objects
if obj.val == true
[do something here]
我的 if 语句目前不起作用。有谁知道如何在 Jade 中写这个 if 语句?每个对象都有一个与列表中的值相关的布尔变量。对象的模型如下所示:
{"object":{
"u10":true,
"u11":false,
"u14":true,
"u17":false,
"u18":true
}
}
如果我用硬编码的变量名编写 if 语句,例如
if obj.u10 == true
它工作正常。
obj.val
将逐字查找对象 obj
上名为 "val"
的 属性,就好像 obj = {val: true}
是对象一样。
你需要的是 obj[val]
它将插入变量 val
的实际 value 并使用查找 属性 名称
我有一个名为 values
的值数组。我有一个 each
声明我正在遍历数组。在 each
语句中,我使用 for 循环遍历对象数组。当我遍历对象时,我想检查并查看它们是否有一个 true
布尔变量,该变量与我的值数组中的项目名称相同。
- var values = ["u10","u11","u14","u17","u18"];
each val in values.length ? values : ['There are no values']
-for obj in objects
if obj.val == true
[do something here]
我的 if 语句目前不起作用。有谁知道如何在 Jade 中写这个 if 语句?每个对象都有一个与列表中的值相关的布尔变量。对象的模型如下所示:
{"object":{
"u10":true,
"u11":false,
"u14":true,
"u17":false,
"u18":true
}
}
如果我用硬编码的变量名编写 if 语句,例如
if obj.u10 == true
它工作正常。
obj.val
将逐字查找对象 obj
上名为 "val"
的 属性,就好像 obj = {val: true}
是对象一样。
你需要的是 obj[val]
它将插入变量 val
的实际 value 并使用查找 属性 名称