我有2个对象,它们是JSON中PHP的关联数组。它们的结构类似于:
[object]
["green"]
['value1']=integer
['value1']=array...
["blue"]
['value1']=integer
['value1']=array...
[...]
使用JSON定期从Web服务器加载此对象的第一个版本。 通过从webserver接收这个新的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未定义”
答案 0 :(得分:1)
根据你的描述,我认为newObj或oldObj可以写成:
var newObj = {
"green": [
integer,
[array]
],
"blue": [
integer,
[array]
]
};
是不是?
您可以使用:
for(p in Obj){
if(Obj.hasOwnProperty(p)){
// do something with p
}
}
遍历Obj的属性。