JS遍历数组给定数字和数组内的元素比较 如果都不相等只提示一次错误?

vararr=[{name:"张三",age:"18",id:1},{name:"李四",age:"16",id:2},];for(variinarr){if(arr[i... var arr=[
{
name:"张三",
age:"18",
id:1
},
{
name:"李四",
age:"16",
id:2
},
];
for(var i in arr){
if(arr[i].id!=3){
alert("错误");
}else{
//执行的操作
}
}
这里的警告框会弹出两次 怎么解决这个问题 据说可以设置一个变量来解决要怎么做 求大佬指教
展开
 我来答
网海1书生
科技发烧友

2020-02-26 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12315 获赞数:26235

向TA提问 私信TA
展开全部

var arr=[

{

name:"张三",

age:"18",

id:1

},

{

name:"李四",

age:"16",

id:2

},

];

var r=true;

for(var i in arr){

   if(arr[i].id!=3){

      if(r){

         alert("错误");

         r=false;

      }

   }else{

      //执行的操作

   }

}

匿名用户
2020-02-26
展开全部
alert("错误");后面加个break;就行了
追问
要遍历所有的数据 不是遇到错的就跳出循环
追答
那就在循环外定义一个boolean的标记变量,默认是true
在现在alert的地方把标记变量的值为改为false,删掉alert语句
循环结束后根据标记变量的值是否为false来决定是否alert就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式