JavaScript - Méthode Array some ()

La description

Tableau Javascript some() teste si un élément du tableau réussit le test implémenté par la fonction fournie.

Syntaxe

Sa syntaxe est la suivante -

array.some(callback[, thisObject]);

Détails des paramètres

  • callback - Fonction à tester pour chaque élément.

  • thisObject - Objet à utiliser comme this lors de l'exécution du rappel.

Valeur de retour

Si un élément réussit le test, il renvoie vrai, sinon faux.

Compatibilité

Cette méthode est une extension JavaScript de la norme ECMA-262; en tant que tel, il peut ne pas être présent dans d'autres implémentations de la norme. Pour que cela fonctionne, vous devez ajouter le code suivant en haut de votre script.

if (!Array.prototype.some) {
   Array.prototype.some = function(fun /*, thisp*/) {
      var len = this.length;
      if (typeof fun != "function")
      throw new TypeError();
      
      var thisp = arguments[1];
      for (var i = 0; i < len; i++) {
         if (i in this && fun.call(thisp, this[i], i, this))
         return true;
      }
      return false;
   };
}

Exemple

Essayez l'exemple suivant.

<html>
   <head>
      <title>JavaScript Array some Method</title>
   </head>
   
   <body>   
      <script type = "text/javascript">
         if (!Array.prototype.some) {
            Array.prototype.some = function(fun /*, thisp*/) {
               var len = this.length;
               if (typeof fun != "function")
               throw new TypeError();
               
               var thisp = arguments[1];
               for (var i = 0; i < len; i++) {
                  if (i in this && fun.call(thisp, this[i], i, this))
                  return true;
               }
               return false;
            };
         }
         
         function isBigEnough(element, index, array) {
            return (element >= 10);
         }
         
         var retval = [2, 5, 8, 1, 4].some(isBigEnough);
         document.write("Returned value is : " + retval );
         
         var retval = [12, 5, 8, 1, 4].some(isBigEnough);
         document.write("<br />Returned value is : " + retval );
      </script>      
   </body>
</html>

Production

Returned value is : false
Returned value is : true