Questo è meglio spiegato con l'esempio. Le seguenti opere in ES6 per creare un oggetto che consiste di alcune delle chiavi di un oggetto esistente:Creare un oggetto sottoinsieme, costituito solo da alcune delle proprietà di un oggetto esistente
var o = {a:1, b: 2, c: 3}
var {a, c} = o
var subsetObj = {a, c} // will be: {a:1, c:3}
Ci sono due aspetti negativi qui:
- ci sono voluti due statments, e due linee, per creare l'oggetto sottoinsieme desiderato
- Abbiamo dovuto inquinare l'ambito della variabile locale creando le variabili intermedie
a
ec
, che non sono necessarie localmente, tranne che come mezzo per creare il nostro oggetto sottoinsieme.
C'è un modo per ottenere lo stesso risultato in una singola istruzione, senza introdurre la gente del posto non necessari a
e c
?
Perché questo bisogno di una sintassi speciale? Perché non usare lodash o qualcosa del genere, ad es. 'var o = {a: 1, b: 2, c: 3}; _.pick (o, ['a', 'c']) ' – loganfsmyth
Non * necessita * di esso, sarebbe semplicemente carino. Creerei solo una funzione di aiuto, piuttosto che portare tutto di lodash, se mi trovassi a doverne tanto bisogno. Questa domanda riguardava specificamente il supporto della sintassi nativa - il problema in sé è ovviamente banale da risolvere. – Jonah
In totale, volevo solo menzionarlo. – loganfsmyth