对于循环添加被读取为未定义的对象

For loop adding object that is being read as undefined

本文关键字:读取 未定义 对象 添加 于循环 循环      更新时间:2023-09-26

我的问题是长度在我的 for 循环中被读取为一个属性。我的数组中有四个选择,但长度是第 5 个,并且被读取为未定义。知道为什么要增加长度吗?

if($scope.ansType==='CHECKBOX') {
  for(var i = 0; $scope.items.length > 0; i++) {
    console.log($scope.items[i]);
    if ($scope.items[i].exclusive === true) {
      $timeout(function () {
        $('input').addClass('none-of-the-above');
        $('.none-of-the-above').on('click', function () {
          $(this).attr('checked');
          $('input:checkbox').removeAttr('checked');
        });
      },100);
    }
  }
}

你永远不会从数组中删除项目,这就是你让索引越界的原因。试试这个 for(i = 0; i < $scope.items.length; i++){...}