Pourquoi la déstructuration d'objet génère-t-elle une erreur s'il n'y a pas de var
mot clé devant elle?
{a, b} = {a: 1, b: 2};
jette SyntaxError: expected expression, got '='
Les trois exemples suivants fonctionnent sans problème
var {a, b} = {a: 1, b: 2};
var [c, d] = [1, 2];
[e, f] = [1, 2];
Question bonus: Pourquoi n'avons-nous pas besoin d'un var
pour la déstructuration des tableaux?
J'ai rencontré le problème en faisant quelque chose comme
function () {
var {a, b} = objectReturningFunction();
// Now a and b are local variables in the function, right?
// So why can't I assign values to them?
{a, b} = objectReturningFunction();
}