从嵌套循环javascript返回值

时间:2014-11-05 12:10:21

标签: javascript angularjs

我编写了一个涉及多个循环的函数。

$scope.matchFunction = function() {
    angular.forEach(datas, function(data) {
      angular.forEach(data.innerdatas, function(nnerdata) {
        if (innerdata.id === 'ABCD') {
          console.log('matched');
          //matched return true and break and stop executon
          return true;
        }
      });
    });
   return false;
};

但我总是最终回归假。

我想我无法从嵌套循环返回。

任何帮助。

1 个答案:

答案 0 :(得分:4)

您没有从main函数返回,只返回内部函数的值。

您可以使用变量来存储状态,然后可以像

一样返回它
$scope.matchFunction = function () {
    var valid = false;
    angular.forEach(datas, function (data) {
        angular.forEach(data.innerdatas, function (nnerdata) {
            if (innerdata.id === 'ABCD') {
                console.log('matched');
                //matched return true and break and stop executon
                valid = true;
            }
        });
    });
    return valid;
};