【发布时间】:2017-03-27 12:07:49
【问题描述】:
我解析了一个 XML 文件并检索了以下 JSON 对象。 问题是 json 中有破折号,这会导致遍历对象时出现问题。不幸的是,我无法摆脱它们。
$(function() {
let json = JSON.parse('{"app-app":{"$":{},"notneeded":"123","mapped":{"$":{},"match-match":[{"$":{},"name":"Foo 1","url":"/Bar 1"},{"$":{},"name":"Foo 2","url":"/Bar 2"},{"$":{},"name":"Foo 3","url":"Bar 3"}]},"Nothing":"123"}}');
var foo = Object.keys(json['app-app']['mapped']['match-match']).length;
for (var i = 0; i < foo; i++) {
console.log(json['app-app']['mapped']['match-match'][i].name);
console.log(json['app-app']['mapped']['match-match'][i].url);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
我想遍历对象并提取每个“匹配”的孩子。像这样的:
return [
{
name: 'Foo 1',
url: 'Bar 1'
},
[...]
]
提前谢谢你。
【问题讨论】:
-
value.app.mapped.match
标签: javascript arrays json loops parsing