Déstructuration étendue d'objets
Dans ES6, la déstructuration est une syntaxe qui vous permet de décompresser les valeurs d'un tableau ou d'un objet en variables individuelles. Bien que la déstructuration soit incroyablement pratique, elle peut être limitée si vous souhaitez attribuer des valeurs à un objet existant.
Considérez le scénario suivant :
var foo = { x: "bar", y: "baz" }
var oof = {}
Supposons que vous souhaitiez transférer le Propriétés x et y de foo à oof en utilisant la déstructuration. Une tentative simple pourrait ressembler à ceci :
oof{x,y} = foo
Cependant, cela ne fonctionnera pas. Alors, comment pouvez-vous modifier les propriétés d'un objet existant à l'aide de la déstructuration ?
Une solution possible
Bien que ce ne soit pas l'approche la plus élégante, vous pouvez utiliser une combinaison de déstructuration et d'affectation pour obtenir le résultat souhaité :
({x: oof.x, y: oof.y} = foo);
Cela lira les propriétés x et y de foo et les attribuera aux propriétés correspondantes sur oof.
Approches alternatives
Les approches alternatives pour mettre à jour les propriétés des objets incluent :
oof.x = foo.x; oof.y = foo.y;
ou
['x', 'y'].forEach(prop => oof[prop] = foo[prop]);
Ces approches peuvent être plus explicites et plus lisibles, selon vos préférences.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!