jQuery: $.each() 递归清空对象
jQuery: $.each() recursion empties the object
我有一个 json 对象,它有 key:value
对,还有格式相同的对象,key:value
我正在尝试像这样在同一个循环中输出key
和value
populateUpdateForm: function(data) {
// console.log(typeof(data));
// console.log(data);
$.each(data, function(i, v){
if ( typeof(v) == 'object' ) {
populateUpdateForm(v);
// return false;
}
console.log(i, v);
});
}
只要当前v
是字符串,它就会正确输出它,但是一旦我点击一个对象并再次启动循环,即使typeof()
显示对象,console.log(data)
也会empty
。
有什么方法可以解决这个问题吗?
谢谢
编辑 无论是否断开循环,都会导致相同的错误,Uncaught TypeError: Cannot read property 'length' of null
jquery.min.js 文件中
EDIT2 这里 https://jsfiddle.net/7rLesm4y/是一个 jsfiddle,它是我的代码的复制/粘贴。我使用相同的jQuery版本,但是在本地主机上出现错误,而在jsfiddle上,它按我的预期工作。
问题在于null
值和$.each
循环。虽然它似乎可以jQuery v2.2.0
但它在旧版本上抛出错误,TypeError: obj is null
在 FF 上,在 Chrome 上Cannot read property 'length' of null
。
相关文章:
- 数组在递归方法中设置为null
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- 递归使用 eval() 是检查程序执行的好方法吗?
- 使用递归、Ramda.js和无点样式重构字符串的getPermutations()
- 递归深度比较
- Eloquent JavaScript递归示例如何终止为返回1,但仍然输出指数值
- 递归函数中断
- 如何递归地获取嵌套对象中所有子对象的列表
- JavaScript 素数搜索无限递归
- 挖空.js映射导致 IE9 上的无限递归
- 用于清除数组/字符串中的零的递归函数
- 递归地从 html 中删除空节点
- jQuery: $.each() 递归清空对象
- 中继:获取递归数据返回空值
- 使用递归组合数组值,即使它们'是空的
- 如何递归地移除包含空数组的嵌套对象
- 在递归调用中避免空引用
- 递归函数返回空数组
- 在node.js中调用递归函数时为空值
- 递归删除嵌套 json 对象中包含空数组的对象