Modern JS Cheatsheet / Памятка по современному JavaScript: Сокращенная запись свойств объектов

Английский оригинал Перевод на русский

Сожалеем, но текст оригинала доступен только зарегистрированным пользователям.

### Сокращенная запись свойств объектов

Tomatoknight 02.10.17 в 17:11

0

Когда вы записываете переменную в свойство объекта, если у переменной то же имя, что и у свойства, можно сделать следующее:

Tomatoknight 02.10.17 в 17:55

0

```js
const x = 10;
const myObj = { x };
console.log(myObj.x) // 10
```

Tomatoknight 02.10.17 в 17:56

0

#### Объяснение

Tomatoknight 02.10.17 в 17:56

0

Раньше (до ES2015), если вы хотели при объявлении нового *литерала объекта* использовать в качестве его свойств переменные, вам пришлось бы писать подобный код:

Tomatoknight 02.10.17 в 17:58

0

```js
const x = 10;
const y = 20;
const myObj = {
x: x, // запись значения переменной х в myObj.x
y: y // запись значения переменной у в myObj.y
};
console.log(myObj.x) // 10
console.log(myObj.y) // 20
```

Tomatoknight 02.10.17 в 17:59

0

Как видите, приходится повторять одно и то же, потому что имена свойств объекта совпадают с именами переменных, которые вы хотите записать в эти свойства.

Tomatoknight 02.10.17 в 18:01

0

С ES2015, если имя переменной совпадает с именем свойства, можно использовать такую сокращенную запись:

Tomatoknight 02.10.17 в 18:01

0

```js
const x = 10;
const y = 20;
const myObj = {
x,
y
};
console.log(myObj.x) // 10
console.log(myObj.y) // 20
```

Tomatoknight 02.10.17 в 18:01

0

#### Внешние ресурсы

Tomatoknight 02.10.17 в 18:01

0

[Сокращенная запись свойств - ES6 Features](http://es6-features.org/#PropertyShorthand)

Tomatoknight 02.10.17 в 18:02

0
Минутку...