访问对象字段的 JavaScript 函数

标签 javascript

我正在寻找一个 JavaScript 函数,它在参数中接收我们想要的对象的字段并返回其值:

var object = {
    field1 : "test1",
    field2 : [
        "test2", "test3"
    ]
};
var getField = function (field){
     return object[field]; 
}
getField("field1"); // working
getField("field2[0]"); // not working due to the array

我是否必须用“[”分割参数才能获得正确的字段?

最佳答案

要获取正确的数组项,您需要使用:

getField("field2")[0] // prints "test2"

使用 getField("field2[0]") 时,您将从 object 访问名为 "field2[0]"< 的属性,它不存在,将返回 undefined

查看有关 property accessors 的更多详细信息.

关于访问对象字段的 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36401869/

相关文章:

javascript - AngularJS 问题仅允许在文本框中输入数字

javascript - Weakmap 引用在继承中丢失

javascript - 如何解析无效的 json 字符串(带有十六进制值)

javascript - node.js 正则表达式提取事件

javascript - 如何使用 "$dateToString"进入 mongodb 2.6 有替代品吗?

javascript - 无法调试 jQuery 按钮

javascript - AngularJS $location 历史堆栈

javascript - Chrome 扩展程序可阻止图像的下载+加载

javascript - Angular - 卡住第一个选项卡,直到另一个选项卡完全加载

Javascript 通过 id 从下拉列表中删除 <option>