Javascript 如果对象数组中的值为false,如何返回具有布尔值的函数?

Javascript 如果对象数组中的值为false,如何返回具有布尔值的函数?,javascript,Javascript,我知道有很多方法可以检查数组中是否存在值,但我想用一个简单的for循环来尝试一下, 下面是我在一个简单的for循环中尝试的内容 const data = [ {checked: true}, {checked: true}, {checked: true}, {checked: true} ] check1(); function check1() { console.log(check2()); // It doesnt print true } function chec

我知道有很多方法可以检查数组中是否存在值,但我想用一个简单的for循环来尝试一下, 下面是我在一个简单的for循环中尝试的内容

const data = [
  {checked: true},
  {checked: true},
  {checked: true},
  {checked: true}
]
check1();
function check1() {
  console.log(check2()); // It doesnt print true
}
function check2() {
  for (let i = 0; i < 10; i++) {
    if (data[i].checked == false) return false;
  }
  return true;
}

上面的函数check2应该打印控制台,但它不打印。

您超出了数组对象的长度,因此如果未定义,则需要进行控制 或者在for循环中,您将使用data.length进行限制,而不是写入10

常数数据=[ {checked:true}, {checked:true}, {checked:true}, {checked:true} ] 检查1; 功能检查1{ console.logcheck2;//它不打印true } 功能检查2{ 对于设i=0;i<10;i++{ 如果数据[i]&&data[i]。选中==false返回false; } 返回true;
} 您超出了数组对象的长度,所以如果未定义,则需要放置控件 或者在for循环中,您将使用data.length进行限制,而不是写入10

常数数据=[ {checked:true}, {checked:true}, {checked:true}, {checked:true} ] 检查1; 功能检查1{ console.logcheck2;//它不打印true } 功能检查2{ 对于设i=0;i<10;i++{ 如果数据[i]&&data[i]。选中==false返回false; } 返回true; } 您得到的是TypeError:无法读取未定义的属性“checked”,因为您正在循环10次,但您的数据没有那么多元素,这就是为什么它没有记录真值的原因。因此,现在您可以使用data.length或将其限制为长度4,或添加未定义条件的检查

常数数据=[ {checked:true}, {checked:true}, {checked:true}, {checked:true} ] 检查1; 功能检查1{ console.logcheck2;//它不打印true } 功能检查2{ 对于设i=0;i<4;i++{ 如果数据[i]。选中===false返回false; } 返回true; } 您得到的是TypeError:无法读取未定义的属性“checked”,因为您正在循环10次,但您的数据没有那么多元素,这就是为什么它没有记录真值的原因。因此,现在您可以使用data.length或将其限制为长度4,或添加未定义条件的检查

常数数据=[ {checked:true}, {checked:true}, {checked:true}, {checked:true} ] 检查1; 功能检查1{ console.logcheck2;//它不打印true } 功能检查2{ 对于设i=0;i<4;i++{ 如果数据[i]。选中===false返回false; } 返回true;
}?? 数组中的项都不是falseJS错误:无法读取未定义的属性“checked”-这是因为数组的长度为4,循环有10次迭代。。数据[4-9]未定义。是,因此我希望函数返回trueuse data.length,而不是for循环的condition子句中的10??数组中的项都不是falseJS错误:无法读取未定义的属性“checked”-这是因为数组的长度为4,循环有10次迭代。。数据[4-9]未定义。是的,因此我希望函数在for循环的条件子句中返回trueuse data.length,而不是10@Always sunny can you answer@Always sunny can you answer@pc\u coder can you answer@pc\u coder can you answer