ホームページ > ウェブフロントエンド > jsチュートリアル > クラスオブジェクトを使用してJavaScript ES6でオブジェクトを動的に作成する方法?

クラスオブジェクトを使用してJavaScript ES6でオブジェクトを動的に作成する方法?

Barbara Streisand
リリース: 2024-11-15 19:25:02
オリジナル
201 人が閲覧しました

How to Create Objects Dynamically in JavaScript ES6 Using Class Objects?

JavaScript ES6 でのオブジェクトの動的作成

従来のアプローチを採用すると、ES6 を使用してクラス名からオブジェクトを構築する際に困難が発生する可能性があります。この記事は、この問題を解決し、ES6 構文を使用してオブジェクトを動的に作成する効果的な方法を提供することを目的としています。

前のコード スニペットは、ファクトリを利用してクラス名に基づいてオブジェクトを作成しようとしています。ただし、グローバル オブジェクト 'window' を通じてクラスを参照すると、エラーが発生します。

これに対処するには、ファクトリの 'specColumn' オブジェクトにクラス オブジェクトの名前ではなくクラス オブジェクト自体を格納することをお勧めします。これにより、クラスがグローバルに利用可能であることに依存することなく、クラスにアクセスできることが保証されます。

さらに、シングルトンのような使用シナリオを考慮すると、ファクトリをクラスではなくオブジェクトに変換する方が適切な場合があります。更新されたコードは次のとおりです:

export class Column {}
export class Sequence {}
export class Checkbox {}

export const columnFactory = {
    specColumn: {
        __default: Column,    // <-- Class object
        __sequence: Sequence, // <-- Class object
        __checkbox: Checkbox  // <-- Class object
    },
    create(name, ...args) {
        let cls = this.specColumn[name] || this.specColumn.__default;
        return new cls(...args);
    }
};
ログイン後にコピー

これらの変更を実装すると、ES6 構文を使用してオブジェクトを動的に作成できるようになります。

以上がクラスオブジェクトを使用してJavaScript ES6でオブジェクトを動的に作成する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート