1

我正在开发一个角度控制器。出于某种原因,有一个 If 语句给了我一个问题,是的,一个 if 语句。

代码如下:

$scope.new = function(logoFile) {
if($scope.comprobarCampoDesc() && $scope.comprobarCampoFecha() && $scope.comprobarCampoName() ) 
{ 
//program logic
}

还有其他代码:

$scope.comprobarCampoName = function(e) {
//program logic
return bol;
};


$scope.comprobarCampoDesc = function(e) {
//program logic
return bol;
};


$scope.comprobarCampoFecha = function(e) {
//program logic
return bol;
};

好的,出于任何我无法识别的原因,if 语句仅检查 3 种方法中的 2 种,具体取决于顺序。在这种具体情况下,它忽略了“$scope.comprobarCampoName”,但如果我更改顺序,其他方法将不起作用。

谢谢您的帮助。问候。

4

1 回答 1

2

在您的情况下,如果其中一个条件等于false,则该if语句将停止并且不会进一步迭代。

如果您确实需要执行其中的每一个,我建议您执行以下操作:

var first = $scope.comprobarCampoDesc();
var second = $scope.comprobarCampoName();
var third = $scope.comprobarCampoFecha();

if (first && second && third){
   // execute
}
于 2015-11-17T12:16:45.927 回答