Comment obtenir la fonctionnalité « in_array() » de PHP en JavaScript ?

Barbara Streisand
Libérer: 2024-11-17 04:28:03
original
456 Les gens l'ont consulté

How to Achieve PHP's `in_array()` Functionality in JavaScript?

Alternative JavaScript à in_array() de PHP

En JavaScript, il n'y a pas de fonction intégrée qui se comporte exactement comme in_array() de PHP. Cependant, les bibliothèques populaires proposent des fonctions utilitaires pour obtenir des fonctionnalités similaires.

La fonction inArray de jQuery suit le comportement de PHP et compare les valeurs dans les tableaux :

function inArray(needle, haystack) {
  var length = haystack.length;
  for (var i = 0; i < length; i++) {
    if (haystack[i] == needle) return true;
  }
  return false;
}
Copier après la connexion

Si vous devez vérifier si un tableau se trouve dans un autre array, comme in_array() de PHP, une fonction personnalisée comme celle-ci est nécessaire :

function inArrayNested(needle, haystack) {
  var length = haystack.length;
  for (var i = 0; i < length; i++) {
    if (typeof haystack[i] == 'object') {
      if (arrayCompare(haystack[i], needle)) return true;
    } else {
      if (haystack[i] == needle) return true;
    }
  }
  return false;
}
Copier après la connexion

Cette fonction inArrayNested vérifie les tableaux simples et imbriqués. N'oubliez pas qu'il n'est généralement pas recommandé d'étendre le prototype Array.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal