【发布时间】:2017-07-20 14:59:17
【问题描述】:
假设我有一个看起来像这样的 json 对象
"bounds":{
"coordinatetop":{
"x":143,
"y":544
},
"coordinatebottom":{
"x":140,
"y":510
}
}
我正在尝试使用此代码解析当前的 JSON,其中 data 是 json 数据,而 target 只是一个标签 ID。
$.each(data, function(index, value) {
if (typeof(value) == 'object') {
processBounds(value, target);
} else {
console.log(value);
}
});
当我循环执行此操作时,函数调用获取坐标顶部和目标的值,然后是 x 和 y 的值,它们是 143 和 544。但是,此函数循环的距离不够远,无法获取坐标底部的值。
还有哪些其他实现方式可以实现这一目标?谢谢
【问题讨论】:
-
问题不清楚。当我尝试重现您的问题时,它会记录整个对象 (jsfiddle.net/5hy9zbmu)。这意味着我对您的代码做出了错误的假设。这就是为什么我们要求minimal reproducible example
-
那不是JSON。 “JSON 是一种文本、语言无关的数据交换格式,很像 XML、CSV 或 YAML。” -> What is the difference between JSON and Object Literal Notation?
-
@Andreas 叹了口气。是的,我们知道。人们可以互换使用这个词,我经历过零次关于他们的意思的困惑
-
我写的一个新的例子来解释递归:井字盒问题。盒子里面的盒子。 output.jsbin.com/lemusan/8
标签: javascript json parsing