Maison > interface Web > js tutoriel > Comment transmettre l'objet racine lors de l'utilisation des paramètres de la fonction de déstructuration ES6 ?

Comment transmettre l'objet racine lors de l'utilisation des paramètres de la fonction de déstructuration ES6 ?

DDD
Libérer: 2024-11-02 03:50:30
original
713 Les gens l'ont consulté

How to Pass the Root Object When Using ES6 Destructuring Function Parameters?

Nommer l'objet racine dans les paramètres de la fonction de déstructuration ES6

ES6 propose la déstructuration comme un moyen concis d'extraire les propriétés des objets et des tableaux en variables. Cependant, il peut devenir difficile de conserver le nom de l'objet racine lors de la déstructuration des arguments de fonction.

Métaphore de l'héritage ES5

Dans ES5, vous pouvez transmettre l'intégralité de l'objet options "monter" la chaîne d'héritage jusqu'à une classe parent, lui permettant d'accéder à tous les paramètres :

// 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
};
Copier après la connexion

Déstructuration ES6

Avec la déstructuration ES6, l'extraction de paramètres spécifiques devient plus pratique :

// 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?
};
Copier après la connexion

Options : extraction individuelle ou passage d'objet racine

Une option consiste à extraire chaque option individuellement dans setupChildClass6(), puis à les transmettre à setupParentClass6 (). Cependant, cette approche peut devenir verbeuse avec de nombreux paramètres :

// ugh.
var setupChildClass6b = ({minVal, maxVal, rows, columns}) => {
    rangeSlider.setup(minVal, maxVal);
    setupParentClass6({rows, columns});
};
Copier après la connexion

Utiliser une variable temporaire

Une solution plus concise consiste à utiliser une variable temporaire pour contenir la racine objet options avant de le transmettre à setupParentClass6() :

const setupChildClass6 = options => {
    const {minVal, maxVal} = options;
    rangeSlider.setup(minVal, maxVal);
    setupParentClass6(options);
};
Copier après la connexion

Cette méthode vous permet de déstructurer les paramètres spécifiques nécessaires dans setupChildClass6(), tout en transmettant l'intégralité de l'objet options à setupParentClass6().

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal