Trier les propriétés d'un objet
Bonjour,
cette discussion fait suite à : https://www.developpez.net/forums/d2...riete-d-objet/
Alors j'avais crée cela :
Code:
1 2 3 4 5 6
| let verbes1gr = {
parler : 'parlare' , acheter:'comprare', payer:'pagare', cuisiner : 'cucinare', jouer:'giocare',
conduire:'guidare', habiter : 'abitare', aimer :'amare', arriver : 'arrivare',
ecouter :'ascoltare', embrasser : 'baciare', aider :'aiutare', porter : 'portare', nager:'nuotare',
arracher :'strappare', chercher : 'cercare'
} |
puis l'ordre alphabétique :
Code:
1 2 3 4 5 6 7 8
| //mise en ordre alpha
export let VG1Ordonnes= Object.keys(verbes1gr).sort().reduce(
(obj, key) => {
obj[key] = verbes1gr[key];
return obj;
},
{}
); |
puis la création des options dans le select
Code:
1 2 3 4 5 6 7
| let select = document.getElementById("verbeUtilis1cat");
for(let i in VG1Ordonnes){
let options=document.createElement('option');
options.text=i+' ('+ VG1Ordonnes[i] +')';
options.value = VG1Ordonnes[i] ;
select.add(options);
} |
ma fonction tempsSimple avec trois parametres :
Code:
tempsSimples(mode, temps, i)
Tout marche pour les temps simples des verbes. Mais j'ai commencé les temps composé et la :roll: il y a des verbes il faut l'auxiliaire "être" et d'autres avoir snif
J'ai essayé à faire quelques changement :
Code:
1 2 3 4 5 6 7 8 9 10 11
| let verbes1gr = {
"avoir" : {
parler : 'parlare' , acheter:'comprare', payer:'pagare', cuisiner : 'cucinare', jouer:'giocare',
conduire:'guidare', habiter : 'abitare', aimer :'amare', arriver : 'arrivare',
ecouter :'ascoltare', embrasser : 'baciare', aider :'aiutare', nager:'nuotare',
arracher :'strappare', chercher : 'cercare', porter : 'portare',
},
"etre" : {
arriver : 'arrivare',
}
} |
Code:
1 2 3 4 5 6 7
| export let VG1Ordonnes= Object.keys(verbes1gr).sort().reduce(
(obj, key) => {
obj[key] = verbes1gr.[key];
return obj;
},
{}
); |
puis je voudrais créer une fonction dans ma classe du genre
mon constructeur :
Code:
1 2 3
| constructor(verbe) {
this.verbe = verbe;
} |
Code:
1 2 3 4 5 6 7 8
| tempsCompose() {
let resultat
if(verbes1gr.avoir.includes(this.verbe)) {
resultat = this.avoir...
} else if(verbes1gr.etre.includes(this.verbe)) {
resultat = this.etre...
}
} |
Ce qui marche pas :
-Déjà let VG1Ordonnes ne marche pas dans l'état ou bien si je la modifie en mettant Object.keys(verbes1gr.avoir) je n'ai pas les verbes en être et vice-versa.
Pour la fonction je n'ai pas pu testé je voudrais savoir si includes() est une bonne solution.
merci