CGI-BBS > JAVA/JavaScript > JavaScript > 変数の値ををそのまま新しい変数として利用したい。


カレッヂ
カレッヂ


質問者 Kibitaki  投稿日 11/16(日) 17:23:22
こんにちは。
JavaScriptで、変数の値をそのまま新しい変数名として使う方法はありますでしょうか?

具体的には、

[変数a] = [内容a];(例:hensu = atai)

としたところで、[内容a]を

[変数b(=内容a)] = [内容b](例:atai = hello)

といった感じで、[内容a]をそのまま[変数b]の変数名としたいのです。
わかりにくい説明で恐縮ですが、よろしくお願いします。

プロバイダ参照:
サーバのOS:(未選択)
パソコンのOS:Win95系
エディタ:
FTPソフト:
サーバ移転:していない
改造:(未選択)
CGI習熟度:(未選択)

回答者 m7  [削除]  投稿日 11/17(月) 05:58:52
evalを使えば文字列を式として評価することができますので、
ご希望の動作も実現できます。

例えば、

a='test';
eval(a+'="あ"');
document.write(test);

を実行すると、
a+'="あ"'
の結果である文字列
test="あ"
がevalで式として評価され、変数 test の内容は "あ" となり、document.writeでその結果が表示されます。

これとはちょっと違う方法ですが、配列の添え字には文字列も使用できますので、

b=new Array();
a="test";
b[a]="あ";
document.write(b["test"]);

のような方法も使えます。
質問者 Kibitaki  [削除]  投稿日 11/19(水) 21:40:26
m7さん、丁寧な解説有り難うございました。
早速試してみます。それでは。m(_ _)m

このページは終了したので返信(回答)は書きこめません
 


Web裏技