【发布时间】:2011-06-21 14:51:07
【问题描述】:
我有 2 个对象,它们是 JSON 中 PHP 的关联数组。他们有这样的结构':
[object]
["green"]
['value1']=integer
['value1']=array...
["blue"]
['value1']=integer
['value1']=array...
[...]
此对象的第一个版本是使用 JSON 定期从网络服务器加载的。 通过从网络服务器接收这个新的 JSON 字符串,当前对象移动到变量“oldObj”,而新数据存储到变量“newObj”中。 新对象的元素可能比旧对象少,如下所示:
[newObj]
["green"]
['value1']=integer
['value1']=array...
如您所见:“蓝色”不见了。
现在我需要这些元素,它们是旧对象的一部分/这意味着:新对象中缺少这些元素(在本例中:元素“蓝色”)
我尝试了以下方法,但没有成功:
[...]
var newObj=data;
$.each (oldObj,function(i,n)
{if (newObj.i.length<1) {alert('missing: '+i);}
}
);//end foreach
错误消息:“newObj.i 未定义”
【问题讨论】:
-
应该是
newObj[i],但这也无济于事。对象没有数组那样的“长度”。 -
这可能会有所帮助.. stackoverflow.com/questions/1200562/…
-
@Felix Kling 我在 SO 中搜索了答案,但没有找到您的链接。谢谢 - 我会检查的。
-
@Felix Kling @Neeraj +1 - 这些链接对我找到解决方案有很大帮助 --- 结合 wong2 的答案。非常感谢!
标签: javascript jquery