Pages

Préparation au DS

   ...

🍕Base des données

const pizzas = [

    { name:"queen", ingredients: ["🐷","🍄","🍅","🧀"] },

    { name: "cheese", ingredients: ["🧀", "🍅"]},

    { name: "oriental", ingredients: ["🍅","🐑","🍄","🌶"]},

    { name: "royal", ingredients: ["🍅","🌵"]},

  ];

🪛 Questions

Trouvez les pizzas avec du 🧀

Trouvez les pizzas avec du 🍅

Trouvez les pizzas avec un ingrédient quelconque (soit du "🍅" ou du "🧀" ou du "🐑" ...)

Trouvez les pizzas avec au moins un ingrédient parmi une liste d'ingrédients

Trouvez les pizzas avec tous les ingrédients d'une liste

Trouvez les pizzas avec viande

Ajoutez pour chaque pizza le type (🐮ou ☘️)

Trouvez l'ensemble des ingrédients  "🐷","🍄","🍅","🧀","🐑","🌶","🌵"

Trouvez pour chaque ingrédient le nombre de pizzas l'utilisant ,"🧀":2 …

Trouvez pour chaque ingrédient la liste des pizzas l'utilisant

Ajoutez le prix de chaque pizza

prices = new Map([ ["🍅", 1], ["🐷", 2], ["🌶",2], ["🍄", 5], ["🧀", 5], ["🐑", 2], ["🌵", 10]]);

Projet : Guess

Le joueur a trois chances pour trouver un nombre secret !

💥Imaginez que vous soyez chef de projet, vous rédigez en urgence un prototype pour les membres de votre équipe. Ce prototype permet à tous de fixer les idées (proto).

👷 Il faudra l'implémenter en JS.

TD

  const pizzas = [

    { name:"queen", ingredients: ["🐷","🍄","🍅","🧀"] },

    { name: "cheese", ingredients: ["🧀", "🍅"]},

    { name: "oriental", ingredients: ["🍅","🐑","🍄","🌶"]},

    { name: "royal", ingredients: ["🍅","🌵"]},

  ];

Voici une représentation sous forme de tableau : 

🍕Questions ?

  1. Trouvez la liste des ingredients : ["🐷","🍄","🍅","🧀",🐑","🌶","🌵"]
  2. Trouvez pour chaque ingredient la liste des pizzas : 

test :

Evaluez : 

  const dataBase = [
{ name: "queen", ingredients: ["🐷", "🍄", "🍅", "🧀"] },
  { name: "cheese", ingredients: ["🧀", "🍅"] },
  { name: "oriental", ingredients: ["🍅", "🐑", "🍄", "🌶"] },
  { name: "royal", ingredients: ["🍅", "🌵"] },
];


const orientalPizza = dataBase.find( (pizza) => {
  return pizza.name==="oriental";
})
console.log(orientalPizza);

const royalPizza =
dataBase.find((pizza) => pizza.ingredients === ["🍅", "🌵"]);
console.log(royalPizza);

 const pizzas = [

    { name:"queen", ingredients: ["🐷","🍄","🍅","🧀"] },

    { name: "cheese", ingredients: ["🧀", "🍅"]},

    { name: "oriental", ingredients: ["🍅","🐑","🍄","🌶"]},

    { name: "royal", ingredients: ["🍅","🌵"]},

  ];

Voici une représentation sous forme de tableau : 

🍕Questions ?

  1. Trouvez les pizzas avec du 🧀
  2. Trouvez les pizzas avec du 🍅
  3. Trouvez les pizzas avec un ingrédient quelconque

TD : methods

 // trouvez 🚀

const getRandomArray = (length) => {
  return Array.from({ length }, () => Math.floor(Math.random() * 5));
};

getRandomArray(5); //
const arr = getRandomArray(5);

// give max
const max = Math.max( 🚀 ); //

// give max with reduce
const maxWithReduce = arr.reduce( 🚀 );

// give min and max with reduce
const minMaxWithReduce = arr.reduce(
  🚀 ,
  { min: Infinity, max: -Infinity }
);

//use destructuring to get min and max
const { 🚀 } = minMaxWithReduce;
console.log(min, maximum);

// give ocurrences of numbers in array
const occurrences = arr.reduce((acc, val) => {
  🚀 );

console.log(occurrences);

Exemple d'affichage :

Notre structure de base pour les TDs


const pizzas = [
  { name: "queen", toppings: ["🐷", "🍄", "🍅", "🧀"] },
  { name: "cheese", toppings: ["🧀", "🍅"] },
  { name: "oriental", toppings: ["🍅", "🐑", "🍄", "🌶"] },
  { name: "royal", toppings: ["🍅", "🌵"] },
];

Special event

Function Style, Method Style

 The main difference between the function style and the use of the `filter() or map()` method lies 

in the programming paradigm they represent.


🥇**Function Style**: The function style represents the procedural programming paradigm.

🎖️ **Method Style**: The method style represents the functional programming paradigm.

Création de sa propre librairie de fonctions !

 loops to methods

Mon forEach

const corbeille = ["Orange", "Banane", "Ananas", "Pamplemousse"];

1) Afficher les fruits de la corbeille de fruits.



2) Coupez les fruits en deux.

 

3) Comment utiliser cette fonction

function randomDrink(fruit, i, fruits) {
  const drinks = ["🥤", "🧋", "🍹"];
  const choice = drinks[Math.floor(Math.random() * drinks.length)];
  const article = /^[aeiou]/i.test(fruit) ? "d'" : "de ";
  fruits[i] = `${choice} ${article}${fruit}`;
}
Voici des résultats possibles

TD : foreach


 🔢 1.1 Doubling Each Number
onst numbers = [3, 7, 10, 2];
console.log(numbers); // [6, 14, 20, 4] 
🔢 1.2 Tripling Each Number
onst numbers = [3, 7, 10, 2];
console.log(numbers); // [9, 21, 30, 12]
🔢 1.3 Doubling Each Number (new array)
onst numbers = [3, 7, 10, 2];
console.log(doubled); // [6, 14, 20, 4]
---

📉 2. Finding the Maximum Value

const numbers = [15, 42, 8, 33];
console.log(`Max: ${max}`); // Max: 42

---

🧮 3. Counting Even Numbers
const numbers = [4, 9, 12, 7, 6];
console.log(`Even numbers: ${count}`); // Even numbers: 3

---

📊 4. Creating a Frequency Map
const numbers = [1, 2, 2, 3, 3, 3];
const frequency = {};
console.log(frequency); // { '1': 1, '2': 2, '3': 3 }

---

🧹 5. Cleaning or Normalizing Dat
const rawData = [102, 98, 105, 100]; console.log(normalized); // [2, -2, 5, 0]

---

📦 6. Transforming API Dat
const users = [
  { name: "Alice", age: 30 },
  { name: "Bob", age: 25 },
  { name: "Charlie", age: 35 }
];
console.log(names); // ["Alice", "Bob", "Charlie"]