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
alert(*!*user.name*/!*); //'Pete', alterações são vistas a partir da referência "user"
74
74
```
75
75
76
-
É como se tivéssemos uma armário com duas chaves e usado uma delas (`admin`) para abri-lo e fazer alterações. Então, se depois usarmos a outra chave (`user`), ainda estaremos abrindo o mesmo armário e podemos acessar o conteúdo alterado.
76
+
É como se tivéssemos um armário com duas chaves e usado uma delas (`admin`) para abri-lo e fazer alterações. Então, se depois usarmos a outra chave (`user`), ainda estaremos abrindo o mesmo armário e podemos acessar o conteúdo alterado.
77
77
78
78
## Comparação por referência
79
79
@@ -143,7 +143,7 @@ let user = {
143
143
*!*
144
144
let clone = {}; // o novo objeto vazio
145
145
146
-
// vamos copiar todas as propriedades de usuario para ele
146
+
// vamos copiar todas as propriedades de usuário para ele
147
147
for (let key in user) {
148
148
clone[key] = user[key];
149
149
}
@@ -157,7 +157,7 @@ alert( user.name ); // Ainda será John no objeto original
157
157
158
158
Também podemos usar o método [Object.assign](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign).
159
159
160
-
Asyntax é:
160
+
Asintaxe é:
161
161
162
162
```js
163
163
Object.assign(dest, ...sources);
@@ -259,7 +259,7 @@ Para corrigir isso e tornar `user` e `clone` objetos verdadeiramente separados,
259
259
260
260
### structuredClone
261
261
262
-
A chamada `structuredClone(object)`clone o `object`como todas as propriedades aninhadas.
262
+
A chamada `structuredClone(object)`clona o `object`com todas as propriedades aninhadas.
263
263
264
264
Aqui está com podemos usá-lo em nosso exemplo:
265
265
@@ -276,7 +276,7 @@ let user = {
276
276
let clone = structuredClone(user);
277
277
*/!*
278
278
279
-
alert( user.sizes === clone.sizes ); // false, objectos diferentes
279
+
alert( user.sizes === clone.sizes ); // false, objetos diferentes
280
280
281
281
// Agora, user e clone são completamente independentes
282
282
user.sizes.width = 60; // altera uma propriedade de um local
@@ -299,7 +299,7 @@ let clone = structuredClone(user);
299
299
alert(clone.me === clone); // true
300
300
```
301
301
302
-
Como você pode ver `clone.me` faz referência a `clone`, não a `user`!, Então a referência circular foi clonada corretamente também.
302
+
Como você pode ver `clone.me` faz referência a `clone`, não a `user`! Então a referência circular foi clonada corretamente também.
303
303
304
304
No entanto, existem casos em que `structuredClone` falha.
0 commit comments