web-dev-qa-db-fra.com

Comment arrêter lodash.js _.each en boucle?

J'ai ce code de lignes:

_.each($scope.inspectionReviews, function (value, key) {
    alert("status=" + value.IsNormal + "   " + "name=" + value.InspectionItemName);
    if (!value.IsNormal) {
        $scope.status = false;
        return;
    }
    $scope.status = true;
})

À un moment donné, je veux arrêter de boucler, mais il semble que ce retour ne fonctionne pas.

Comment puis-je arrêter la boucle?

47
Michael
return false;

Utilisez ceci dans un lodash chacun pour casser.

EDIT: J'ai vu le titre changé pour souligner. Est-ce que c'est souligné ou lodash? Comme je l'ai indiqué ci-dessus, vous pouvez séparer chacun d'eux en lodash, mais je pense que le soulignement imite chacun d'eux.

92
AtheistP3ace
  • retourne faux => cela a exactement le même effet que d'utiliser break;

  • retourne => Cela revient à utiliser continue;

18
jack wu

Si vous souhaitez vérifier si une condition donnée est vérifiée pour l'un des membres de la collection, utilisez l'option Underscore certains (alias alias: tous ) au lieu de each. .

var hasAtLeastOneFalseStatus = _.any($scope.inspectionReviews, function (value, key) {
    return !value.IsNormal;
})

$scope.status = hasAtLeastOneFalseStatus ? false: true;
3
ncksllvn