JavaScript对象:按名称作为字符串访问变量属性
如果我有一个如下所示的javascript对象
var columns = { left: true,
center : false,
right : false
}
我有一个既传递对象又传递属性的函数,像这样
//should return falsevar side = read_prop(columns, 'right');
身体read_prop(object, property)
会是什么样?
回答:
您不需要它的功能-只需使用括号符号即可:
var side = columns['right'];
这等于点表示法,var side =columns.right;
除了right
在使用方括号表示法时也可能来自变量,函数返回值等的事实。
如果需要它的功能,则为:
function read_prop(obj, prop) { return obj[prop];
}
为了回答下面与原始问题没有直接关系的一些注释,可以通过多个括号引用嵌套对象。如果您有这样的嵌套对象:
var foo = { a: 1, b: 2, c: {x: 999, y:998, z: 997}};
您可以访问财产x
的c
,如下所示:
var cx = foo['c']['x']
如果未定义属性,则将尝试引用该属性undefined
(不是null
或false
):
foo['c']['q'] === null// returns false
foo['c']['q'] === false
// returns false
foo['c']['q'] === undefined
// returns true
以上是 JavaScript对象:按名称作为字符串访问变量属性 的全部内容, 来源链接: utcz.com/qa/407611.html