Update text formatting and indentation of sample (#24301)
This commit is contained in:
committed by
Randell Dawson
parent
9d8eea97b8
commit
dd41c2af88
@ -4,62 +4,62 @@ localeTitle: Atribuição de Destruturação
|
|||||||
---
|
---
|
||||||
## Atribuição de Destruturação
|
## Atribuição de Destruturação
|
||||||
|
|
||||||
A sintaxe Destructuring Assignment é uma expressão em JavaScript que permite descompactar valores ou propriedades de arrays ou objetos.
|
A sintaxe _Destructuring Assignment_ é uma expressão em JavaScript que permite descompactar valores ou propriedades de arrays ou objetos.
|
||||||
|
|
||||||
Digamos que você tenha uma matriz que contenha um nome e sobrenome como dois valores, mas você deseja reatribuir esses valores a algo mais descritivo. Você pode usar Destructuring para conseguir isso.
|
Digamos que você tenha uma matriz que contenha um nome e sobrenome como dois valores, mas você deseja reatribuir esses valores a algo mais descritivo. Você pode usar _Destructuring_ para conseguir isso.
|
||||||
|
|
||||||
**Destruturação ES5**
|
**Destruturação ES5**
|
||||||
|
|
||||||
```js
|
```js
|
||||||
var fullName = ["John", "Smith"];
|
var fullName = ["John", "Smith"];
|
||||||
var firstName = fullName[0];
|
var firstName = fullName[0];
|
||||||
var lastName = fullName[1];
|
var lastName = fullName[1];
|
||||||
|
|
||||||
console.log(firstName, lastName); // John Smith
|
console.log(firstName, lastName); // John Smith
|
||||||
```
|
```
|
||||||
|
|
||||||
**ES6 Destructuring**
|
**Destruturação ES6**
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const fullName = ["John", "Smith"];
|
const fullName = ["John", "Smith"];
|
||||||
const [firstName, lastName] = fullName;
|
const [firstName, lastName] = fullName;
|
||||||
|
|
||||||
console.log(firstName, lastName); // John Smith
|
console.log(firstName, lastName); // John Smith
|
||||||
```
|
```
|
||||||
|
|
||||||
Os exemplos acima mostram o benefício de usar a Atribuição de Destruturação do ES6.
|
Os exemplos acima mostram o benefício de usar a Atribuição de Destruturação do ES6.
|
||||||
|
|
||||||
Você também pode usar Destructuring em objetos usando uma sintaxe semelhante
|
Você também pode usar _Destructuring_ em objetos usando uma sintaxe semelhante
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const fullName = { first: "John", last: "Smith"};
|
const fullName = { first: "John", last: "Smith"};
|
||||||
const {first, last} = fullName;
|
const {first, last} = fullName;
|
||||||
|
|
||||||
console.log(first, last); // John Smith
|
console.log(first, last); // John Smith
|
||||||
```
|
```
|
||||||
|
|
||||||
A Destructuring Assignment é um pouco diferente porque o objeto deve ter propriedades com os nomes que você está atribuindo. Portanto, o código abaixo não funcionaria como pretendido.
|
A _Destructuring Assignment_ é um pouco diferente porque o objeto deve ter propriedades com os nomes que você está atribuindo. Portanto, o código abaixo não funcionaria como pretendido.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const fullName = { first: "John", last: "Smith"};
|
const fullName = { first: "John", last: "Smith"};
|
||||||
const {firstName, lastName} = fullName;
|
const {firstName, lastName} = fullName;
|
||||||
|
|
||||||
console.log(firstName, lastName); // undefined undefined
|
console.log(firstName, lastName); // undefined undefined
|
||||||
```
|
```
|
||||||
|
|
||||||
Você ainda pode conseguir o resultado desejado usando a seguinte sintaxe.
|
Você ainda pode conseguir o resultado desejado usando a seguinte sintaxe.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const obj = {propertyName: value}
|
const obj = {propertyName: value}
|
||||||
{propertyName: desiredVariableName} = obj
|
{propertyName: desiredVariableName} = obj
|
||||||
```
|
```
|
||||||
|
|
||||||
Nosso exemplo anterior seria reescrito da seguinte forma:
|
Nosso exemplo anterior seria reescrito da seguinte forma:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const fullName = { first: "John", last: "Smith"};
|
const fullName = { first: "John", last: "Smith"};
|
||||||
const {first: firstName, last: lastName} = fullName;
|
const {first: firstName, last: lastName} = fullName;
|
||||||
|
|
||||||
console.log(firstName, lastName); // John Smith
|
console.log(firstName, lastName); // John Smith
|
||||||
|
|
||||||
```
|
```
|
Reference in New Issue
Block a user