我正在寻找一个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的更多详细信息。

09-18 02:27