On veut maintenant faire évoluer notre version précédente et grouper nos fonctions dans un objet, plutôt que d’avoir des fonctions “qui se baladent” dans notre programme.
- Dupliquer le fichier v2-functions.js et le nommer v3-object.js
- Mettre à jour le commentaire en haut du fichier
- Créer une variable de type objet (avec les accolades { }) nommée todo
- À l’intérieur de l’objet ( == des accolades ), déclarer tout d’abord :
- Une propriété name ayant pour valeur ‘My todo list’
- Une propriété items contenant un tableau vide
- À ce stade, votre objet devrait ressembler à ça :
let todo = {
name: 'My todo list',
items: []
}
- Méthode display
- La déclaration d’une méthode est similaire à celle d’une propriété
- Cependant, sa valeur sera une fonction
- Déclarer la méthode display puis ajouter lui le code de votre précédente fonction display
- Attention, il faudra retirer le nom display de votre fonction. Il n’y en a plus besoin, car cette fonction anonyme est assignée à notre méthode
- Votre code devrait maintenant ressembler à quelque chose comme ça :
let todo = {
name: 'My todo list',
items: [],
display: function () {
console.log(this.name, this.items);
console.log('Items number: ', this.items.length, '\n');
},
}
Vous pouvez tester votre objet en appelant la fonction display :
todo.display();
Les autres méthodes se déclarent et s’utilisent de la même manière.
Essayez des les faire par vous-même et posez des questions avant de consulter le corrigé !
- Remplacer la fonction add par une méthode add
- Remplacer la fonction change par une méthode change
- Remplacer la fonction remove par une méthode remove
Essayez de tout faire par vous même, puis vous pouvez comparer avec cette correction.