Ecrire sa bibliothèque de fonctions sur les tableaux !
const pers = [
{ nom: "Dupont", ville: "evry", sex: "f", born: 1903 },
{ nom: "Dupont", ville: "Paris", sex: "f", born: 2004 },
{ nom: "Brusel", ville: "belfort", sex: "h", born: 1930 }
];
const filles_callBack = pers.filter(function(p){
return (p.sex === "f");
});
😈Testez vous !
{ nom: "Dupont", ville: "evry", sex: "f", born: 1903 },
{ nom: "Dupont", ville: "Paris", sex: "f", born: 2004 },
{ nom: "Brusel", ville: "belfort", sex: "h", born: 1930 }
];
const filles_callBack = pers.filter(function(p){
return (p.sex === "f");
});
Voici le résultat en mémoire !
🪛Comparer ces différentes écritures :
});
🪛Comparer ces différentes écritures :
- const filles_callBackArrow = pers.filter(p => p.sex === "f");
- const filles_callBackDest = pers.filter(function( {sex}){
});
- const filles_callBackArrowDestruc = pers.filter( ( {sex} ) => sex === "f" );
Ces écritures sont toutes équivalentes !
🪛Pour chaque transformation donner le résultat sous forme graphique :
🪛filles.map(function annee( p, index ) {
return [p.nom,p.born]
});
🪛filles.map(ajout);
🪛filles.map(ajout_2);
🪛filles.map(p=>p);
🪛filles.map(p=>p["new"]="hallo");
🪛filles.map(ageObj);
🪛filles.map(ageVal);
🪛filles.map(function({ born : annee }) {return { annee }});
🪛filles.map(function({ born :annee, nom }) {return { nom,annee }});
🪛filles.map(function ({ nom, ville }) {
return {
info: `${nom} habite à ${ville}`
}
});
🪛Pour chaque transformation donner le résultat sous forme graphique :
Par exemple pour le code suivant
const filles= pers.filter(function(p){
return (p.sex === "f");
});
const dates = filles.map(function annee( p, index ) {
return {
num : index,
annee : p.born
};
});
Vous dessinez le résultat en mémoire suivant :
Voici les fonctions de CallBack !
function ageObj({ born }) {return { born }}
function ageVal({ born }) {return born}
function ajout(p) {p["new"] = "hallo";}
function ajout_2(p) {return p["new"] = "hallo";}
function ageObjDestruct({ born :annee }) {return { annee }};
function ageVal({ born }) {return born}
function ajout(p) {p["new"] = "hallo";}
function ajout_2(p) {return p["new"] = "hallo";}
function ageObjDestruct({ born :annee }) {return { annee }};
Déssinez le résultat pour :
return [p.nom,p.born]
});
🪛filles.map(ajout);
🪛filles.map(ajout_2);
🪛filles.map(p=>p);
🪛filles.map(p=>p["new"]="hallo");
🪛filles.map(ageObj);
🪛filles.map(ageVal);
🪛filles.map(function({ born : annee }) {return { annee }});
🪛filles.map(function({ born :annee, nom }) {return { nom,annee }});
🪛filles.map(function ({ nom, ville }) {
return {
info: `${nom} habite à ${ville}`
}
});