如果我有以下JSON,
[{},{"param":"#content","value":"K2-12M","quantity":1,"q_id":3,"clear":1}
{"param":"#content","value":"K2-12F","quantity":2,"q_id":3,"clear":0}]
在js / jquery中,我将如何循环,如果任何项目有"clear":0
,那么将所有项目设置为"clear":0
?
答案 0 :(得分:3)
var clear;
for( var i=0, l=json.length; i<l; i++ ){
if( 0 === json[i].clear ){
clear = true;
break;
}
}
if( clear ){
for( i=0; i<l; i++) {
json[i].clear = 0;
}
}
或使用jQuery(效率较低):
$( json ).filter(
function( ix, obj ){
return 0 === obj.clear;
}
).length
&& $( json ).each(
function( ix, obj ){
obj.clear = 0;
}
);
答案 1 :(得分:1)
嵌套for循环:
for(var i = 0, l = json.length; i < l; i++ ){
if(json[i].clear == 0){
for(var x = 0; x < l; x++) {
json[x].clear = 0;
}
break;
}
}
Fiddle为你的小小乐趣。