PHP には「変数変数」の概念があり、保存された名前に基づいて変数へのアクセスが可能ですが、JavaScript にも同様のメカニズムが提供されていますか?
PHP とは異なり、 JavaScript では、専用の変数変数がサポートされていません。ただし、ウィンドウ オブジェクトを通じて部分的な機能が提供されます。グローバル変数 (let と const を除く) は window のプロパティになり、window.variableName.
経由でアクセスできるようになります。ただし、このアプローチは関数スコープの変数には不十分です。たとえば、次の PHP コード:
$x = "variable"; $$x = "Hello, World!"; echo $variable; // Outputs "Hello, World!"
は JavaScript でエラーを生成します。
変数変数をシミュレートするために eval を使用することを推奨する人もいます。ただし、このアプローチは強く推奨されません。 eval は文字列をコードとして評価するため、セキュリティ リスクとパフォーマンスのオーバーヘッドが生じます。
変数に頼るのではなく、特定のニーズに合わせて適切なデータ構造を採用してください。このアプローチにより、明確さ、効率性、保守性が向上します。配列、オブジェクト、およびマップは、明確な名前とアクセス メカニズムを使用してデータを管理する柔軟で構造化された方法を提供します。
PHP の例を次のように言い換えることを検討してください。
$x = "variable"; $$x = "Hello, World!";
In JavaScript、オブジェクト リテラルで十分です:
const values = {variable: "Hello, World!"}; console.log(values.variable); // Outputs "Hello, World!"
このアプローチは次のことを提供します。 「変数」に関連付けられた値にアクセスする構造化された明確な方法。
以上がJavaScript は PHP のような可変変数メカニズムを提供しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。