動的キーを使用したオブジェクトの作成
JavaScript では、通常、オブジェクト リテラル内のキーは静的な文字列です。ただし、入力データに基づいてオブジェクトにキーを動的に割り当てる必要がある場合があります。
このシナリオでは、ユーザーは動的に決定されるキーと値を持つオブジェクトを作成する必要がある関数を持っています。ただし、単に .map 関数を使用すると、同じキー名を持つオブジェクトの配列が作成されます。
解決策 1: 計算されたキー (ES2015)
最近導入されたES2015 標準では、計算されたキーを使用してオブジェクトを作成できます。この構文を使用すると、オブジェクト リテラルのキーを変数または式として動的に指定できます。
stuff = function (thing, callback) { var inputs = $('div.quantity > input').map(function () { return { [this.attr('name')]: this.attr('value'), }; }); callback(null, inputs); };
解決策 2: 括弧表記 (ES5 以降)
JavaScript の以前のバージョン (ES5 以下) では、括弧表記を使用して動的キーを割り当てることができます。これには、キーを角かっこ内の文字列として定義することが含まれます。
stuff = function (thing, callback) { var inputs = $('div.quantity > input').map(function () { var key = this.attr('name'); var value = this.attr('value'); var ret = {}; ret[key] = value; return ret; }); callback(null, inputs); };
これらの手法のいずれかを使用すると、JavaScript の入力データに基づいてオブジェクト キーを動的に作成し、キーが目的の値と一致することを確認できます。
以上が動的キーを使用して JavaScript オブジェクトを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。