Pages

Cours : filter

 🚀Objectif comprendre le mécanisme des filtres ! 


Cours : → filter

🛟Github : https://github.com/dupontdenis/filter.git


🏚️DM

const students = [

  { name: "Alice", age: 20, filiere: "info", notes: [5, "ABJ","ABI"] },

  { name: "Mohamed", age: 20, filiere: "info", notes: [12, 0, 15] },

  { name: "Romain", age: 21, filiere: "info", notes: [12, "ABI", 0] },

  { name: "Bob", age: 22, filiere: "Bio", notes: [12, 14, 16] },

  { name: "Charlie", age: 19, filiere: "Droit", notes: [8, 11, 13] },

];


🪛Donnez le nombre total d’étudiants absents.

Un étudiant est considéré comme absent s’il possède au moins une valeur "ABI" ou "ABJ" dans son tableau notes.


🪛🪛À partir du tableau students, créez un nouveau tableau contenant pour chaque étudiant :

  • son nom

  • son nombre d’absences, c’est‑à‑dire le nombre de valeurs "ABI" ou "ABJ" dans son tableau notes.

[

  { name: "Alice", abs: 2 },

  { name: "Mohamed", abs: 0 },

  { name: "Romain", abs: 1 },

  { name: "Bob", abs: 0 },

  { name: "Charlie", abs: 0 }

]


🥷🏿LearnByYourself

🚀Tentez de comprendre ce code !
const absentRegex = /AB[IJ]/; const nbAbsents = students .filter(s => s.notes.some(n => absentRegex.test(n))) .length;
  1. const absentRegex = /AB[IJ]/;

  2. const a = students
  3.   .filter(s => s.notes.some(n => absentRegex.test(n)))