2016-12-06 59 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); 

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

相关问题