2016-12-06 72 views
0

我經由循環中創建的Java腳本變量作爲獲取JavaScript變量的值,這是其它兩個可變

var option1="some value 1"; 
var option2="some value 2"; 
var option3="some value 3"; 

現在組合如果val=2(VAL取決於用戶輸入它可以被1,2或3) 。我必須相應地打印option1,option2option3

var finalopt="option"+val; 
    alert(finalopt); 

現在輸出(option2) 我要爲(一些值2)輸出,因爲選項2的價值,是一些價值2

+0

只要將它聲明爲一個數組,它工作正常。 ['一些值1','一些值2','一些值2']。警報([VAL]); – Lain

+1

如果聲明爲單個obj的屬性並以obj [「option」+ val的形式訪問,但是如果您希望它在que多個變量中,則使用全局對象窗口作爲窗口[「option」+ val])可能非常容易 –

回答

3

結合在他們的對象

var obj = { 
    option1:"some value 1", 
    option2:"some value 2", 
    option3:"some value 3" 
} 

,並使用[]語法訪問屬性

var finalopt="option"+val; 
console.log(obj[finalopt]); 

代碼片段

var obj = { 
 
    option1:"some value 1", 
 
    option2:"some value 2", 
 
    option3:"some value 3" 
 
} 
 

 
var val = prompt('Input 1, 2 or 3'); 
 

 
var finalopt="option"+val; 
 
console.log(obj[finalopt]);

+0

先生,它工作 – user5524348

2

可以使用window對象通過其名稱獲取變量值:

window[finalopt]; 
0
eval('option'+val); 

它的工作原理,但其他解決方案更好。