我有一个清单:
var lt = {
"part1" : "p1",
"part2" : "p2",
. (another key/value)
. (another key/value)
. (another key/value)
. (another key/value)
}
和变量
var myVar = "part2";
我想如果myVar等于lt我希望变量z取值为lt的p2。我有这个:
for (var i = 0; i < lt.length; i++) {
if (myVar === lt[i]) {
z = lt.[i]
}
}
然而,当我测试它的chrome控制台时,var lt return undifined
答案 0 :(得分:2)
dict不是数组。 lt.length
将返回undefined
。
首先测试lt[myVar]
是否存在,然后将值复制到z
:
var lt = {
"part1" : "p1",
"part2" : "p2",
"part3" : "p3"
}
var myVar = "part2";
var z;
if(typeof lt[myVar] !== "undefined"){
z = lt[myVar];
}
console.log(z)
---> "p2"
或简单地说:
if(myVar in lt){
z = lt[myVar];
}
答案 1 :(得分:1)
for (var i in lt) {
if (myVar === i) {
z = lt[i]
}
}