ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript で変数をオブジェクトのプロパティ名として使用できますか?

JavaScript で変数をオブジェクトのプロパティ名として使用できますか?

Susan Sarandon
リリース: 2024-12-25 10:05:11
オリジナル
650 人が閲覧しました

Can I Use Variables as Object Property Names in JavaScript?

JavaScript でオブジェクトのプロパティ名を動的に定義する方法

JavaScript オブジェクト リテラルは、キーと値のペアのコレクションを定義するのに便利です。はプロパティ名を表し、値はプロパティ値を表します。ただし、一般的な疑問が生じます: 変数をオブジェクト リテラルのキーとして使用できますか?

この質問に対する答えは JavaScript のバージョンによって異なります。 ES5 以前では、オブジェクト リテラルのキーとして変数を直接使用することはできません。例:

var thetop = 'top';
something.stop().animate({ thetop: 10 }, 10); // Doesn't work
ログイン後にコピー

これは、ES5 ではオブジェクト プロパティ名を二重引用符または一重引用符で囲む必要があるためです。

ES5 以前の解決策

ES5 で変数をキーとして使用するには、オブジェクト リテラルを作成し、変数名を使用してプロパティ値を手動で割り当てる必要がありますプロパティ キーとして:

var aniArgs = {};
aniArgs[thetop] = 10; // Assign value to property using variable name as key
something.stop().animate(aniArgs, 10); // Pass the object literal to the animate method
ログイン後にコピー

ES6 計算プロパティ名

ES6 では ComputedPropertyName の概念が導入され、オブジェクト内のプロパティ名として変数と式を使用できるようになります。リテラル。この構文は次のようになります。

const obj = { [variableOrExpression]: value };
ログイン後にコピー

この構文を使用すると、変数を使用してプロパティ名を動的に定義できます。たとえば、

var thetop = 'top';
const obj = { [thetop]: 10 };
console.log(obj.top); // Prints 10
ログイン後にコピー

この構文は最新のブラウザでサポートされており、オブジェクトのプロパティ名を動的に定義するプロセス。

以上がJavaScript で変数をオブジェクトのプロパティ名として使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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