繁体   English   中英

JavaScript-将值从动态键/值转换为动态键/值

[英]JavaScript - get value from dynamic key/value into dynamic key/value

var data = {
    "DYNAMIC_KEY/VALUE_A":{
        "DYNAMIC_KEY/VALUE_1":{
            "key_1":"value_1",
            "key_2":"value_2",
            "key_3":"value_3"
        },
        "DYNAMIC_KEY/VALUE_2":{
            "key_1":"value_1",
            "key_2":"value_2",
            "key_3":"value_3"
        },
        "DYNAMIC_KEY/VALUE_3":{
            "key_1":"value_1",
            "key_2":"value_2",
            "key_3":"value_3"
        }
    },
    "DYNAMIC_KEY/VALUE_B":{
        "DYNAMIC_KEY/VALUE_1":{
            "key_1":"value_1",
            "key_2":"value_2",
            "key_3":"value_3"
        },
        "DYNAMIC_KEY/VALUE_2":{
            "key_1":"value_1",
            "key_2":"value_2",
            "key_3":"value_3"
        },
        "DYNAMIC_KEY/VALUE_3":{
            "key_1":"value_1",
            "key_2":"value_2",
            "key_3":"value_3"
        }
    }
}

alert(data[DYNAMIC_KEY/VALUE_A[DYNAMIC_KEY/VALUE_1].key_1]);

alert(data[DYNAMIC_KEY/VALUE_A][DYNAMIC_KEY/VALUE_1]["key_1"]);

我尝试了几种解决方案,但没有!

有人可以解释我该如何进行吗? 谢谢 :)

data对象的key s中有特殊符号( / )。 这就是您的代码无法正常工作的原因。

要从该对象获取价值,必须将key用作下标。

alert(data["DYNAMIC_KEY/VALUE_A"]["DYNAMIC_KEY/VALUE_1"].key_1);

或对于key_1,您也可以使用下标[]表示法。

alert(data["DYNAMIC_KEY/VALUE_A"]["DYNAMIC_KEY/VALUE_1"]["key_1"]);

签入文档: https : //developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Working_with_Objects

您可以使用

alert(data['DYNAMIC_KEY/VALUE_A']['DYNAMIC_KEY/VALUE_1']['key_1']);

演示

暂无
暂无

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

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