ホームページ >ウェブフロントエンド >jsチュートリアル >ES6 で非構造化関数パラメータを使用するときに元のオブジェクト名を保持する方法は?

ES6 で非構造化関数パラメータを使用するときに元のオブジェクト名を保持する方法は?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-03 10:30:031056ブラウズ

How to Preserve the Original Object Name When Using Destructured Function Parameters in ES6?

ES6 の構造化された関数パラメーターでのルート オブジェクト名の保持

ES6 では、関数パラメーターを構造化することで、個々のオブジェクト プロパティを簡潔に抽出できます。ただし、特定のプロパティのみが構造化されていない場合に、ルート オブジェクトの名前をどのように保持するかという問題が生じます。

ES5 でルート オブジェクトを渡す

ES5 では、オブジェクトは、継承メタファーを使用して参照によって渡すことができます。たとえば、「setupParentClass5」関数は「options」オブジェクトを受け取り、それを使用して「textEditor」を構成します。 「setupChildClass5」関数は、「setupParentClass5(options)」を呼び出すことでこれらのオプションを継承します。

ES6 の構造化に関する課題

ES6 では、「const {rows」のような構造化されたパラメータを使用します。 「setupParentClass6」の「, columns}」は、リストされている特定のプロパティのみを抽出します。これにより、「setupChildClass6」内でルートの「options」オブジェクトにアクセスできなくなる可能性があります。

追加の引数を使用した解決策

1 つの解決策は、次に示すように追加の引数を追加することです。 :

const setupChildClass6 = options => {
    const {minVal, maxVal} = options;
    rangeSlider.setup(minVal, maxVal);
    setupParentClass6(options); 
};

このアプローチにより、「setupChildClass6」は、非構造化プロパティと非構造化プロパティの両方を含む完全な「options」オブジェクトにアクセスできるようになります。

以上がES6 で非構造化関数パラメータを使用するときに元のオブジェクト名を保持する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。