简体   繁体   English

使用一组键 Javascript 访问 JSON 对象

[英]Access JSON object using a array of keys Javascript

I need to access into myObject using a generic function.我需要使用通用函数访问 myObject。

Data:数据:

myObject = {
    "name": "Caroline",
    "number": 32,
    "country": {
        "province": {
            "city": {
                "NY": 67989876,
                "Boston": 454346,
            }
        }
    }
}

myArray = ["country", "province", "city"]

The solution would be:解决方案是:

myObject["country"]["province"]["city"]

I want rewrite after myObject, then the solution can not be a copy我想在myObject之后重写,那么解决办法是不能复制

myObject["country"]["province"]["city"] = "New datas"
var data = myObject;
for (var i in myArray) {
    data = data[myArray[i]];
}

alert(data);

Fiddle https://jsfiddle.net/g2uyb8rn/小提琴https://jsfiddle.net/g2uyb8rn/

Shorter version by @JeremyThille is: @JeremyThille 的较短版本是:

var data = myObject;
for (let i of myArray) data = data[i];

alert(data);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM