for of
let tabPers =
[
{
nom: "Dupont",
sex : "f"},
{
nom: "Brusel",
sex : "h"},
{
nom: "Dupont",
sex : "f"},
];
Cas des pointeurs
for (let pers of tabPers){
console.log(pers);
}
Cas de la déstructuration
for (let { nom } of tabPers){
console.log(nom);
}
A chaque itération, nous aurons :
{
let [ FORMAL_PARAMETERS ] = [ ACTUAL_PARAMETERS ];
{
CODE
}
}
ainsi
{
let [ { nom } ] = [ { nom: "Dupont",sex:"f" } ];
{
console.log( nom );
}
}
sera équivalent à
{
let [ { nom:nom } ] = [ { nom: "Dupont",sex:"f" } ];
{
console.log( nom );
}
}
et
{
let [ { nom } ] = [ { nom: "Dupont",sex:"f" } ];
{
console.log( nom );
}
}
Tu pointes ou tu tires ?
Que veux dire filtrer un tableau ?
La modification d'un élément filtré modifie-t-elle le tableau initial ?
La modification d'un élément filtré modifie-t-elle le tableau initial ?
Visualize : outil d'aide
Voici un lien pour comprendre le clonage d'objets avec :
Object.assign( objDestination, objSource)
Visualisation
this et la fonction flechée
function normalise(){
let normaliseT = this.valeurs.map(function(v){
return v / this.nb;
});
console.log(`valeurs normalisées ${normaliseT}`);
}
const obj = {valeurs:[3,6,12], nb:3};
normalise.call(obj);
Solution à ce problème classique :
function normalise(){
let normaliseT = this.valeurs.map(function(v){
return v / this.nb;
}.bind(this));
console.log(`valeurs normalisées ${normaliseT}`);
}
const obj = {valeurs:[3,6,12], nb:3};
normalise.call(obj);
Avec une fonction fléchée :
function normalise(){
let normaliseT = this.valeurs.map(v => v / this.nb);
console.log(`valeurs normalisées ${normaliseT}`);
}
const obj = {valeurs:[3,6,12], nb:3};
normalise.call(obj);
En action
lire un object !
Notez les différences d'affichage :
let u = {t:2,u:3};
console.log("u=" + u);
console.log(u);
let u = {t:2,u:3};
console.log("u=" + u);
console.log(u);
- "u=[object Object]"
- [object Object] {
t: 2,
u: 3
}
const propKeys = Reflect.ownKeys(res);
for (const propKey of propKeys) {
console.log([propKey, res[propKey]]);
}
Inscription à :
Articles (Atom)