【发布时间】:2011-01-13 07:43:14
【问题描述】:
前几天我想我在 jQuery 中看到了一个对象迭代器,它有一个可以设置为递归迭代子对象的标志。我认为它是 jQuery.each() 的一部分,但现在我在文档中看不到该功能。
jQuery中有没有这样的迭代器可以自动递归?
(我知道如何在 javascript 中做到这一点。只是想知道我是否真的看到了我以为我看到的东西。)
非常感谢!
编辑: 明确地说,我正在考虑一种实用方法,例如 jQuery.each(),它将递归地遍历 javascript 对象及其嵌套对象。
鉴于下面的示例,each() 方法将遍历所有对象,包括 myobj.obj2.key2 中的嵌套对象。
我可以发誓我在 jQuery 文档中看到了一些关于此的内容,但现在我找不到了。
谢谢。
var myobj = {
obj1: {key1:'val1', key2:'val2'},
obj2: {key1:'val1', key2: {nest1:'val1', nest2:'val2', nest3:'val3'}},
obj3: {key1:'val1', key2:'val2'}
}
$jQuery.each(myobj, function(key,val) {
// Code to run over each key/val pair
// Does so recursively to include all nested objects
})
【问题讨论】:
-
您希望这是什么样的?显示了哪些键、值对?
-
我想我只是认为它会做一个'typeof'测试或其他东西,并在找到一个对象时跳入一个对象。键/值对将适用于它当前所在的任何对象。
标签: jquery json object iteration recursion