文字列を含む変数がある場合、その文字列の内容を型の名前として扱う方法はありますか?有効なJavascript:文字列を型定数にキャスト/変換できますか?
var ts = "Array";
var magic_type = ????; //magic
var obj_instance = new magic_type;
がされており、obj_instance == []
:
たとえば、JavaScriptで????
ようにあるのでしょうか?
文字列を含む変数がある場合、その文字列の内容を型の名前として扱う方法はありますか?有効なJavascript:文字列を型定数にキャスト/変換できますか?
var ts = "Array";
var magic_type = ????; //magic
var obj_instance = new magic_type;
がされており、obj_instance == []
:
たとえば、JavaScriptで????
ようにあるのでしょうか?
ブラケット表記をグローバルオブジェクトで使用してインスタンス化できます。
var arr = new window['Array'];
コンストラクタが引数を取る場合は、末尾に追加します。 []
構文が異なるメモリ位置に新しいArray
が作成されますので、注意点として
、あなたのコードの例...
obj_instance === []
...今までtrue
に評価しません。
var instance = new window[someString]();
魔法は必要ありません。
ありがとう;) – andrewdotnich
付録付き: このアイデアをチェーン化することもできます: 'window ['google'] ['visualization'] ['PieChart']' – andrewdotnich