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}) => a + 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 )

for of

let tabPers = [ { nom: "Dupont", sex : "f", }, { nom: "Brusel", sex : "h", }, { nom: "Dupont", sex : "f", }, ]; 

for(let v of tabPers) { console.log(`${typeof v}, ${v instanceof Object}`)}


Etude de v


Déboggeur


Rappels sur les objets, tableaux et pointeur !

let tabPers = [ { nom: "Dupont", sex : "f", }, { nom: "Brusel", sex : "h", }, { nom: "Dupont", sex : "f", }, ];

ou 

let tabPers = [  {
    nom: "Dupont",
    sex : "f",
  }, 
  {
    nom: "Brusel",
    sex : "h",
  },
  {
    nom: "Dupont",
    sex : "f",
  },  

];


Dessiner le résultat du code

let a = tabPers[1];


Dessiner le résultat du code

let a = tabPers[1];
let b = a["nom"];


Dessiner le résultat du code

let New = tabPers; 

Dessiner le résultat du code

let New = tabPers; 
New[2] = tabPers[0] = New[1];



code transf

let tabPers = [  {
    nom: "Dupont",
    sex : "f",
  }, 
  {
    nom: "Brusel",
    sex : "h",
  },
  {
    nom: "Dupont",
    sex : "f",
  },  
];



  
function toUpperName(person) {
  person.nom = person.nom.toUpperCase();
  return person;
}

function transf(array, fx) {
  let passed = [];
  
  for(let v  of array)
 passed.push(fx(v));

  return passed;
}
let T = transf(tabPers,toUpperName);


Afficher T et tabPers


code tranf

Rappel : 
Object.assign({}, obj) permet de cloner l'obj.


code

let tabPers = [  {
    nom: "Dupont",
    sex : "f",
  }, 
  {
    nom: "Brusel",
    sex : "h",
  },
  {
    nom: "Dupont",
    sex : "f",
  },  
];



  
function clone(person) {
  return Object.assign({},person)
}

function transf(array, fx) {
  let passed = [];
  
  for(let v  of array)
 passed.push(fx(v));

  return passed;
}
let T = transf(tabPers,clone);


Afficher T et tabPers


code transf

let tabPers = [  {
    nom: "Dupont",
    sex : "f",
  }, 
  {
    nom: "Brusel",
    sex : "h",
  },
  {
    nom: "Dupont",
    sex : "f",
  },  
];
  
function civiliteF(person) {
  return (` Cher(e) ${person.nom}`);}

function transf(array, fx) {
  let passed = [];
  
  for(let v  of array)
 passed.push(fx(v));

  return passed;
}
let tabT = transf(tabPers,civiliteF);


Afficher tabT et tabPers




Code filtre

let tabPers = [  {
    nom: "Dupont",
    sex : "f",
  }, 
  {
    nom: "Brusel",
    sex : "h",
  },
  {
    nom: "Dupont",
    sex : "f",
  },  
];
Le tableau tabPers


function femme(person) {
  return (person.sex === "f");}
  
function civiliteF(person) {
  return (` Cher(e) ${person.nom}`);}

function filter(array, test) {
  let passed = [];
  for (let val of array) {
    if (test(val))
      passed.push(val);
  }
  return passed;
}

let tabFiltre = filter(tabPers,femme);

Afficher tabfiltre et tabPers