通过concat获取变量,显示名称不显示值

时间:2019-06-23 12:25:14

标签: javascript

我试图在for循环中获取一个变量,但获取的是变量名而不是value。

var c1 = ['2', '4', '7', '5']

试图在这里获取它:

var a = 1;

console.log('c'+a);

它显示c1而不是数组。

帮助我理解这个问题

3 个答案:

答案 0 :(得分:1)

所有属于窗口

var c1 = ['2', '4', '7', '5']
var a = 1;

console.log('window.c1 => ',window['c'+a]);  // but this is really bad code

// prefer to do :

var data = {  c1 : ['2', '4', '7', '5'] }

console.log('data.c1 => ', data['c'+a] );   

答案 1 :(得分:0)

如果要显示c1,则需要使用eval,如果'c' + 1仅显示字符串'c1',而不是变量c1

var c1 = ['2', '4', '7', '5']

var a = 1;

console.log(eval('c'+a));

var c1 = ['2', '4', '7', '5']

var a = 1;

console.log(eval('c'+a));

答案 2 :(得分:0)

我看到你的数组是'c1'而不是'c'; 所以,试试这个:

console.log(c1[a])