JavaScript对象:按名称作为字符串访问变量属性

冰雹:

如果我有一个如下所示的javascript对象

var columns = {
  left: true,
  center : false,
  right : false
}

我有一个既传递对象又传递属性的函数,像这样

//should return false
var 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}};

您可以访问财产xc,如下所示:

var cx = foo['c']['x']

如果未定义属性,则将尝试引用该属性undefined(不是nullfalse):

foo['c']['q'] === null
// returns false

foo['c']['q'] === false
// returns false

foo['c']['q'] === undefined
// returns true

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

获取对象属性名称作为字符串

变量名称作为Javascript中的字符串

通过名称作为字符串访问Java变量

动态属性名称作为字符串

从输入字符串中获取属性名称作为字符串

使用属性名称作为字符串排序

获取Swift变量的实际名称作为字符串

获取动作名称作为属性参数的字符串

获取Swift类的属性名称作为字符串

如何在Java中将接口名称和变量名称作为字符串传递

将DataFrame变量名称作为字符串传递

反应元素名称作为字符串变量

如何获取变量名称作为字符串?

获取对象属性名称作为字符串

OCaml:以其字段名称作为字符串访问记录的字段

python访问变量按名称作为字符串-反向eval

访问json将变量名称作为字符串传递

变量对象属性名称作为JavaScript中的参数?

Android应用程式名称作为变量而不是静态字符串

获取PHP变量名称作为许多变量的字符串

如何使用反射从对象名称作为字符串访问对象

按名称作为字符串引用 GUI 元素

如何使用属性名称作为字符串获取属性值,例如 object["foo"]

无法通过名称作为字符串访问对象

使用变量名称作为字符串使用循环设置变量

从 JavaScript 中的对象中提取对象名称作为字符串

如何从名称作为字符串访问 qml 属性?

在python中将变量名称作为原始字符串输入到请求中

检索未知名称作为字符串值存储在变量中的对象