You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Object.entries: Créer une Map à partir d'un objet
156
156
157
-
When a `Map` is created, we can pass an array (or another iterable) with key/value pairs for initialization, like this:
157
+
Lorsqu'une `Map` est créée, nous pouvons passer un tableau (ou un autre itérable) contenant des paires clé/valeur pour l'initialisation, comme ceci :
158
158
159
159
```js run
160
-
// array of [key, value] pairs
160
+
// tableau de paires [clé, valeur]
161
161
let map = new Map([
162
162
['1', 'str1'],
163
163
[1, 'num1'],
@@ -167,9 +167,9 @@ let map = new Map([
167
167
alert( map.get('1') ); // str1
168
168
```
169
169
170
-
If we have a plain object, and we'd like to create a `Map` from it, then we can use built-in method [Object.entries(obj)](mdn:js/Object/entries) that returns an array of key/value pairs for an object exactly in that format.
170
+
Si nous avons un objet simple et que nous souhaitons en créer une `Map`, nous pouvons utiliser la méthode intégrée [Object.entries(obj)](mdn:js/Object/entries) qui renvoie un tableau de paires clé/valeur pour un objet exactement dans ce format.
171
171
172
-
So we can create a map from an object like this:
172
+
Nous pouvons donc créer une `Map` à partir d'un objet de la manière suivante :
173
173
174
174
```js run
175
175
let obj = {
@@ -184,14 +184,13 @@ let map = new Map(Object.entries(obj));
184
184
alert( map.get('name') ); // John
185
185
```
186
186
187
-
Here, `Object.entries` returns the array of key/value pairs: `[ ["name","John"], ["age", 30] ]`. That's what `Map` needs.
187
+
Ici, `Object.entries` renvoie le tableau de paires clé/valeur : `[ ["name","John"], ["age", 30] ]`. C'est ce dont a besoin la `Map`.
188
188
189
+
## Object.fromEntries: Objet à partir d'une Map
189
190
190
-
## Object.fromEntries: Object from Map
191
+
Nous venons de voir comment créer une `Map` à partir d'un objet simple avec `Object.entries(obj)`.
191
192
192
-
We've just seen how to create `Map` from a plain object with `Object.entries(obj)`.
193
-
194
-
There's `Object.fromEntries` method that does the reverse: given an array of `[key, value]` pairs, it creates an object from them:
193
+
Il existe une méthode `Object.fromEntries` qui fait l'inverse : étant donné un tableau de paires `[clé, valeur]`, elle crée un objet à partir de ces paires :
195
194
196
195
```js run
197
196
let prices = Object.fromEntries([
@@ -200,16 +199,16 @@ let prices = Object.fromEntries([
We can use `Object.fromEntries` to get a plain object from `Map`.
207
+
Nous pouvons utiliser `Object.fromEntries` pour obtenir un objet simple à partir d'une `Map`.
209
208
210
-
E.g. we store the data in a `Map`, but we need to pass it to a 3rd-party code that expects a plain object.
209
+
Par exemple, nous stockons les données dans une `Map`, mais nous devons les transmettre à un code tiers qui attend un objet simple.
211
210
212
-
Here we go:
211
+
Voici comment procéder :
213
212
214
213
```js run
215
214
let map = new Map();
@@ -218,23 +217,24 @@ map.set('orange', 2);
218
217
map.set('meat', 4);
219
218
220
219
*!*
221
-
let obj = Object.fromEntries(map.entries()); // make a plain object (*)
220
+
let obj = Object.fromEntries(map.entries()); // créer un objet simple (*)
222
221
*/!*
223
222
224
-
// done!
223
+
// terminé!
225
224
// obj = { banana: 1, orange: 2, meat: 4 }
226
225
227
226
alert(obj.orange); // 2
228
227
```
229
228
230
-
A call to `map.entries()` returns an iterable of key/value pairs, exactly in the right format for `Object.fromEntries`.
229
+
Un appel à `map.entries()` renvoie un itérable de paires clé/valeur, exactement dans le bon format pour `Object.fromEntries`.
230
+
231
+
Nous pourrions également raccourcir la ligne (*) :
231
232
232
-
We could also make line `(*)` shorter:
233
233
```js
234
-
let obj = Object.fromEntries(map); // omit .entries()
234
+
let obj = Object.fromEntries(map); // .entries() omis
235
235
```
236
236
237
-
That's the same, because `Object.fromEntries` expects an iterable object as the argument. Not necessarily an array. And the standard iteration for `map` returns same key/value pairs as `map.entries()`. So we get a plain object with same key/values as the `map`.
237
+
C'est la même chose, car `Object.fromEntries` attend un objet itérable en argument. Pas nécessairement un tableau. Et l'itération standard pour une `map` renvoie les mêmes paires clé/valeur que `map.entries()`. Ainsi, nous obtenons un objet simple avec les mêmes clés/valeurs que la `map`.
0 commit comments