在Json中访问嵌套对象

时间:2009-05-14 10:42:36

标签: javascript jquery json

我有一个包含其他项目的自定义对象(即数组,字符串,其他类型的对象)。

我不确定如何遍历对象以迭代并列出嵌套项的所有对象类型,键和值。

这个问题的第二个我不知道有多少级别的嵌套(因为对象是从后端动态生成的,并作为一个对象传递给我)。

任何想法(我应该只使用javascript / jQuery或两者来最有效地完成这项工作)?


谢谢,我会给你一些代码。我从webservice检索结果集,每次返回一组不同的列(具有不同的数据类型)和行。我不知道列的名称,这就是我试图获取数据的原因,但我可以。

根据数据类型,我将执行不同的操作(总和数量,格式化等)。

1 个答案:

答案 0 :(得分:2)

JSON序列化对象包含层次结构,没有任何引用周期,因此遍历应该相当简单,例如

function visit(JSONobj, f)
{ 
   for (var key in JSONobj)
   {
       var value = JSONobj[key];
       f(key,value);
       if (value instanceof Object)
           visit(value, f);
   }
}

其中f是一个用键和值做某事的函数。 (当然你可以直接写一个函数来完成这个。)

你究竟想在对象中找到什么?