JavaScript での動的変数名の使用
PHP では、変数名を動的に操作できます。たとえば、次の PHP コードがあるとします。
$a = 1; $b = 2; $c = 3; $name = 'a'; echo $$name; // prints 1
JavaScript でこの機能を実現する同等の方法はありますか?
JavaScript ソリューション
JavaScript は PHP と同様に動的変数名をサポートしませんが、オブジェクトとプロパティのドットまたは括弧を使用して変数に動的にアクセスするためのメカニズムを提供します。
他のプログラミング言語と同様、JavaScript のすべての変数は、現在のスコープ (グローバルまたはローカル) の一部である変数オブジェクトと呼ばれるオブジェクトに格納されます。
次のグローバル変数:
var a = 1; var b = 2; var c = 3;
ウィンドウ上の「ドット」または「括弧」表記を使用して、動的にアクセスできます。ブラウザのグローバル オブジェクトであるオブジェクト:
var name = "a"; var value = window[name]; // returns 1 // or value = window['a']; // returns 1
このアプローチはグローバル オブジェクトに対してのみ機能することに注意することが重要です。関数コンテキスト内では、変数はアクティベーション オブジェクトの変数オブジェクトに保存されますが、直接アクセスすることはできません。
例:
function foobar() { this.a = 1; this.b = 2; var name = "a"; console.log(window['a']); // undefined console.log(this['a']); // 1 } new foobar();
以上がJavaScript で動的変数名を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。