Pages

deep destructuration

 Exemple pour la deep destructuration :lien

Décomposition




Décomposition : exemple


Allez dans la console de votre navigateur et tapez :
const doc = document.documentElement;
const { clientWidth:largueur } = doc;
console.log( `la largeur de la fenêtre est : ${largueur} ` );

Décomposition : fonction fléchée

Définition

let f = ([a, b] = [10, 10], {x: c} = {x: a - b}) => a + b + c;

Paramètres


f([2,3],{x:10});

f = ([a, b], {x: c}) => + b + c;

// 15 = 2 + 3 + 10

Paramètres

f([2,3]);

([a, b], {x: c} = {x: a - b}) => a + b + c;

// 4 = 2 + 3 + ( 2 - 3 )

Paramètres

f(); 


f = ([a, b] = [10, 10], {x: c} = {x: a - b}) => a + b + c;

// 20 = 10 + 10 + ( 10 - 10 )

la décompostion

décomposition et renomage :

const cours = [
  {
    langue: "fr",
    niveau: {
      lu: 2,
      ecrit: 5,
      parle: 5
    },
    test: 35
  },
  {
    langue: "eng",
    niveau: {
      lu: 4,
      ecrit: 4,
      parle: 4
    },
    test: 100
  }
]

// sans renomage
for (let {langue, niveau: { ecrit} } of cours) {
  console.log(`langue : ${langue}
\t\tniveau de l'écrit = ${ecrit}`)

}

// on peut redéfinir les variables
for (let {langue: l, niveau: { ecrit: } } of cours) {
  console.log(`langue : ${l}
\t\tniveau de l'écrit = ${e}`)
}

>
  • "langue : fr
        niveau de l'écrit = 5"
  • "langue : eng
        niveau de l'écrit = 4"
En action :

See the Pen Untitled by dupont (@dupontcodepen) on CodePen.

CSS : style


Un peu de style, malgré tout !

See the Pen Untitled by dupont (@dupontcodepen) on CodePen.

Projet calculette / HTML/CSS

 

Last call : grid

 Rappel Grid -> lien

Projet : 

Réaliser l'interface d'une calculette

Ce projet perrmet d'appréhender de nombreux aspects de la technologie CSS-grid.


help : https://docs.google.com/document/d/1GFbsAF0xcwWGKeDShq93YsFgIRhxgYWpEZk7i3kdEAA/edit?usp=sharing


Les snippets ?

   et ses snippets (lisez l'article)

Travail en DM : CV

 Workshop Microsoft

 Nous avons mis en place un workshop pour illustrer la mise en ligne de votre CV

Exemple

https://dupontdenis.github.io/CV/

Suivez le guide

Create a resume website in the Browser using HTML, CSS, github.dev, and GitHub Pages





L'inspection montre l'utilisation d'une grille CSS.

Cours : grid

Objectifs





 https://dupontdenis.github.io/grid-exemple/


Cours



JavaScript

 

Js : with Mash

 

 Enoncé

Let's start

Mettez un maximum de cerise 🍒 dans votre panier 🧺 énoncé

🍒 = niveau de difficulté, 

💻 = connectez vous.

Wait 0ms🍒🍒

Donnez l'affichage du code

  1. const wait = 0;

  2. setTimeout(function () {

  3.     console.log('First');

  4. }, wait); 

  5. console.log('Second'); 


Game💻, 🍒

✍️Trouvez un moyen pour déclencher le bouton

https://dupontdenis.github.io/hack-lelia/


Voici ce que vous devriez obtenir, sans le code de sécurité installé par la république !

Opérateurs 🍒

x = 10; y = ++x; z = x++;

Donner les valeurs de x,y,z


Opérateurs🍒

let [x, y] = [,1,f(){}]

Donner les valeurs de x,y


This 🍒🍒🍒

  1. let user = {

  2.   name: "John",

  3.   sayHi: function () {

  4.     console.log(`hi ${this.name}`);

  5.   }

  6. }

✍️Quelle est la valeur de this ?


Find a bug 💻,🍒

Charger le code du simulateur de sélecteurs

https://gist.github.com/dupontdenis/06a9f0519ff11b14994f10386348ad4a



Testez le simulateur, il semblerait y avoir un Bug. 

En effet le résultat pour le sélecteur 😡n'est pas celui attendu :

😡p:nth-child(4) {

      border : 1px solid;

}

Le simulateur fonctionne parfaitement.

✍️Trouvez une explication à ce résultat.

Code 🥇

  1. let obj = {

  2.   nom: "dupont",

  3.   sex: "m"

  4. };


  5. obj = {

  6.   nom: "dupont",

  7.   sex: "f"

  8. };

✍️Expliquez le déroulement du code en mémoire. Quel mot important dans les langages doit être ici invoqué.


Algorithmique 🍒🍒🍒

✍️Donnez le code de separe qui isole les valeurs du tableau non nulle à droite.

separe([1, 0, 1, 1, 1, 0, 1, 0]) 

// [0, 0, 0, 1, 1, 1, 1, 1]


Les méthodes sur les structures 🍒

✍️Dessinez le résultat en mémoire du code !

  1. const data = [

  2.     {

  3.         nom: "coka",

  4.         cat: "Boisson",

  5.         prix: 4, }

  6. , {

  7.         nom: "pepsi",

  8.         cat: "Boisson",

  9.         prix: 9, }

  10. ,{

  11.         nom: "farine",

  12.         cat: "Epicerie",

  13.         prix: 4,

  14.     },];

  1. const groupBy = (arr, key) =>

  2.   arr.reduce((acc, i) => {

  3.     (acc[i[key]] = acc[i[key]] || [] ).push(i);

  4.     return acc;

  5.   }, {});


  6. const cat = groupBy(data,"cat");


Langage 🍒🍒🍒

✍️A quoi sert toto ! Pourriez-vous lui donner un nom plus approprié ?

  1. Function.prototype.toto= function (obj) {

  2.   const method = this,

  3.   temp = function(){

  4.     return method.apply(obj, arguments)

  5.   };

  6.   return temp;

  7. }


map 🍒🍒

  1. const animals = [{name: "i", age: 3, type: 'dog'}, 

  2. {name: "ii", age: 6,type: 'cat'}];


  3. const format = Animals.map( function(animal){

  4.   animal.type = `${animal.name}-${animal.type}`

  5.   return animal

  6. })

Que valent les tableaux animals et format.