简化JavaScript中的if语句

问题描述 投票:2回答:4
$scope.vergleich = function () {
    if ($scope.relrechtsform.indexOf(dataService.dic.alt.rechtsformKanlei || dataService.dic.neu.rechtsformKanlei ) !== -1) {
        return true
    } else {
        return false;                   }
    }
}

我目前是学生,并且才智告诉我,我必须简化此if语句,但是我不知道如何。也许有人可以帮助我。

javascript angularjs web-deployment
4个回答
3
投票

也许您正在寻找这个:

 $scope.vergleich = function () {
  return $scope.relrechtsform.indexOf(dataService.dic.alt.rechtsformKanlei || dataService.dic.neu.rechtsformKanlei ) !== -1;
};

1
投票

简化可能是:

if (condition) { 
  return true;
} 
else { 
  return false;
}

等效于

return condition;

但是您的测试中似乎还存在逻辑错误。

$scope.relrechtsform.indexOf(dataService.dic.alt.rechtsformKanlei ||
                        dataService.dic.neu.rechtsformKanlei ) !== -1

的意思与:

相同
$scope.relrechtsform.indexOf(dataService.dic.alt.rechtsformKanlei) !== -1 || 
$scope.relrechtsform.indexOf(dataService.dic.neu.rechtsformKanlei) !== -1

0
投票

[您可以只使用条件而不是使用IF else语句,我们只需要将条件包装在Boolean Class中就可以了--]]

$scope.vergleich = function () {
    return Boolean($scope.relrechtsform.indexOf(dataService.dic.alt.rechtsformKanlei ||
                        dataService.dic.neu.rechtsformKanlei ) !== -1);
};

0
投票

您可以像这样使用JavaScript Bitwise NOT

© www.soinside.com 2019 - 2024. All rights reserved.