我正在尝试创建一个基于变量finalResult
定义变量input
的程序。 input
变量应调用对象A
内部的对象:
var input = "";
var A = {
AA: {
result: 0
},
AB: {
result: 1
}
}
var finalResult = A.input.result;
因此,如果input = "AA"
,则最终结果应为0,但是如果input = "AB"
,则最终结果应为1。
答案 0 :(得分:0)
您可以执行A[input].result
,假设input
的值作为属性存在于A
中。如果没有该资源,则尝试访问result
上的undefined
时会出错。您可以通过对空对象进行“或”操作来防止这种情况发生:
(A[input] || {}).result // undefined if A[input] isn’t present