Tableau contenu dans un autre tableau

JavaScriptJavaScriptBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons explorer la manière de vérifier si un tableau est contenu dans un autre tableau en JavaScript. Nous utiliserons diverses méthodes de tableau telles que for...of, Set, some() et filter() pour écrire une fonction qui peut déterminer si les éléments du premier tableau sont présents dans le second tableau, quelle que soit leur ordre. Ce laboratoire vous aidera à comprendre comment manipuler les tableaux en JavaScript et à écrire du code efficace pour résoudre des problèmes de programmation courants.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/cond_stmts("Conditional Statements") javascript/BasicConceptsGroup -.-> javascript/loops("Loops") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") subgraph Lab Skills javascript/variables -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} javascript/data_types -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} javascript/arith_ops -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} javascript/comp_ops -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} javascript/cond_stmts -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} javascript/loops -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} javascript/higher_funcs -.-> lab-28149{{"Tableau contenu dans un autre tableau"}} end

Fonction pour vérifier si un tableau est contenu dans un autre tableau

Pour commencer à coder, ouvrez le Terminal/SSH et tapez node. Cette fonction vérifie si tous les éléments du premier tableau sont présents dans le second tableau, quelle que soit leur ordre.

Voici les étapes à suivre :

  1. Utilisez une boucle for...of pour itérer sur un Set créé à partir du premier tableau.
  2. Appliquez Array.prototype.some() pour vérifier si toutes les valeurs distinctes sont présentes dans le second tableau.
  3. Utilisez Array.prototype.filter() pour comparer le nombre d'occurrences de chaque valeur distincte dans les deux tableaux.
  4. Si le compte de tout élément est supérieur dans le premier tableau que dans le second, renvoyez false. Sinon, renvoyez true.

Consultez le code ci-dessous pour voir comment cela fonctionne :

const isContainedIn = (a, b) => {
  for (const v of new Set(a)) {
    if (
      !b.some((e) => e === v) ||
      a.filter((e) => e === v).length > b.filter((e) => e === v).length
    )
      return false;
  }
  return true;
};

Pour tester la fonction, utilisez le code suivant :

isContainedIn([1, 4], [2, 4, 1]); // true

Résumé

Félicitations ! Vous avez terminé le laboratoire sur le tableau contenu dans un autre tableau. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.