Это лучше всего объясняется примером. Следующие работы в ES6 создать объект, состоящий из некоторых из ключей существующего объекта:Создайте объект подмножества, состоящий только из некоторых свойств существующего объекта
var o = {a:1, b: 2, c: 3}
var {a, c} = o
var subsetObj = {a, c} // will be: {a:1, c:3}
Есть два минусы здесь:
- потребовалось два statments, и две линии, для создания нужного объекта подмножества
- Нам пришлось загрязнять локальную область переменных путем создания промежуточных переменных
a
иc
, которые не нужны локально, кроме как средство для создания нашего объекта подмножества.
Есть ли способ сделать то же самое в одном операторе, без введения ненужных местных a
и c
?
Почему это нужно специальный синтаксис? Почему бы не использовать lodash или что-то еще, например. 'var o = {a: 1, b: 2, c: 3}; _.pick (o, ['a', 'c']) ' – loganfsmyth
Это не * нужно * это, было бы просто приятно. Я бы просто создал вспомогательную функцию, а не приводил во все lodash, если бы мне это очень понравилось. Этот вопрос был конкретно о поддержке родного синтаксиса - проблема сама по себе, очевидно, тривиальна для решения. – Jonah
Полностью, просто хотел упомянуть об этом. – loganfsmyth