Maison > Article > interface Web > Comment conserver le nom de l'objet racine lors de la déstructuration des paramètres de fonction dans ES6 ?
Paramètre de la fonction de déstructuration ES6 : préserver le nom de l'objet racine
Dans ES6, les arguments de la fonction de déstructuration permettent une gestion concise et expressive des paramètres. Cependant, lorsque vous travaillez avec plusieurs paramètres de configuration répartis dans une hiérarchie de classes parent-enfant, le nom de l'objet racine peut être perdu après la déstructuration.
Dans ES5, vous pouvez transmettre l'objet racine dans la hiérarchie en utilisant l'héritage :
// ES5 var setupParentClass5 = function(options) { textEditor.setup(options.rows, options.columns); }; var setupChildClass5 = function(options) { rangeSlider.setup(options.minVal, options.maxVal); setupParentClass5(options); // Pass the options object up };
Cependant, dans ES6 utilisant la déstructuration, cela devient un problème :
// ES6 var setupParentClass6 = ({rows, columns}) => { textEditor.setup(rows, columns); }; var setupChildClass6 = ({minVal, maxVal}) => { rangeSlider.setup(minVal, maxVal); setupParentClass6( /* ??? */ ); // How to pass the root options object? };
Pour conserver le nom de l'objet racine, vous pouvez le déclarer en tant que paramètre avant la déstructuration :
const setupChildClass6 = options => { const {minVal, maxVal} = options; rangeSlider.setup(minVal, maxVal); setupParentClass6(options); };
Vous pouvez également extraire toutes les options individuellement dans setupChildClass6 :
var setupChildClass6b = ({minVal, maxVal, rows, columns}) => { rangeSlider.setup(minVal, maxVal); setupParentClass6({rows, columns}); };
Cependant, cette approche nécessite plus de lignes de code et peut ne pas être optimale lorsqu'il s'agit de plusieurs variables déstructurées.
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!