0

我有这样的json:

"elements":[

{
"type":"AAAA",
"val":{"detail":"111"}},

"type":"BBBB",
"val":{"detail":"222"}}
}]

如何获取detail具有特定类型的元素的值?我可能可以制作一个 each 循环,但有没有更有效的方法,比如在 XSL 中:

{{elements.type['AAAA'].val}} 
4

1 回答 1

1

在纯 Javascript 中,您可以为它编写一个辅助函数。

function getReference(array, key) {
    var r;
    array.some(function (a) {
        if (a.type === key) {
            r = a;
            return true;
        }
    });
    return r;
}

var object = { "elements": [{ "type": "AAAA", "val": { "detail": "111" } }, { "type": "BBBB", "val": { "detail": "222" } }] };

document.write('<pre>' + JSON.stringify(getReference(object.elements, 'AAAA').val, 0, 4) + '</pre>');

于 2016-02-23T16:53:59.713 回答