JS怎么动态命名变量名

JavaScript012

JS怎么动态命名变量名,第1张

1.用eval,例子:

<script>

var Thread_num=5

for(var i=1i<=Thread_numi++){

eval("var set_" + i + "=" + i)

}

alert(set_5)

</script>

2.方法1占内存,建议用数组代替

<script>

var Thread_num=5

var arr=[]

for(var i=1i<=Thread_numi++){

arr[i] = i

}

</script>

动态生成全局变量:

//简单的用字符串作为变量名

window['hello'] = "hello, world"

http://r.yuzhua.com

alert(hello)//批量定义for(var i=0i<10i++) { var varname="var"+i window[varname] = "value"+i}alert(var0)alert(var9)

http:www.baidu.com

解释:所有的全局变量都存在window变量里。window是个js本身定义的变量,类型为object。

访问全局变量var0 相当于访问window.var0,也相当于window["var0"]。

局部变量最好用object吧:http:www.baidu.com

function test() { var vars = {} // 简单的字符串作为变量名 vars['hello'] = "hello, world!" alert(vars.hello)//批量定义 for(var i=0i<10i++) {var varname="var"+i vars[varname] = "value"+i } alert(vars.var0) alert(vars.var9)

1.不可以直接使用。

2.不能使用变量作为变量名,据我了解没有哪一种语言可以这么干。

3.你可以使用二维数组来赋值

var array=new Array()

for(var i=0i<3i++){

array[i]=[]

}

4.或者还有另一种方案用eval,它会把字符串当做表达式执行

eval("var test" + i + "=" + i)。