2010-11-28 10 views
0

IFまたはswitch文を使用せずに、別の変数の値に基づいてファンクションに渡す変数を選択したい。JavaScript - 別の変数の値に基づいて渡す​​変数を選択する(ifを使用しない)

たとえば、var1 = yellowの場合、変数yellowを渡します。 var1 = redの場合、変数redを渡します。しかし、IFを使用せずに...

実際の例:以下のevt.target。$ name呼び出しによって返されると予想される名前に一致する変数が宣言されています。私は、event.target。$ nameの値に対応する変数を渡したいと思います。

var listener = function (evt) { 
     toPass = evt.target.$name; 
     myInfobubbles.addBubble("hello", toPass); 
    } 

私はJavaScriptの初心者です。答えが分かり次第申し訳ありません。

+1

これらの変数はどこで定義されていますか? –

+0

私はevalがあなたの後ろのものだと信じています: 'toPass = eval(evt.target。$ name);' –

+0

@Shadow - 避けることはできません。 –

答えて

1

答えは、ブラケット表記を使用することです。それはあなたの変数がどこに定義されているかによって異なります。 window(デフォルトの種類)の場合:

var listener = function (evt) { 
    toPass = evt.target.$name; 
    myInfobubbles.addBubble("hello", window[toPass]); 
} 
+0

こんにちは、変数は同じ領域内のグローバルスコープで定義されます。すべてのJSは現在、私のHTML文書のエリアに座っています。上の "ウィンドウ"は変数の範囲を参照していますか? –

+0

変数をどのように定義するかによって、以下を参照してください。http://jsfiddle.net/BdVp4/1/ –

関連する問題