js如何动态循环给数组名加入变量值 100

例:for(vari=0;i<3;i++)vartest+i=[];(这里数组名为动态递增:test1,test2,test3)=====================... 例:
for( var i = 0;i<3;i++)
var test+i = []; (这里数组名为动态递增:test1,test2,test3)

===================================================
另想知道js中声明数组名可否用变量值?
例:
var a = test;
var name = [];(这里name的值应为a的值:test)
展开
 我来答
百度网友f9dfb0d
2015-04-01 · TA获得超过136个赞
知道小有建树答主
回答量:137
采纳率:0%
帮助的人:167万
展开全部
不可以直接使用。
不能使用变量作为变量名,据我了解没有哪一种语言可以这么干。
你可以使用二维数组来赋值
var array=new Array();
for(var i=0;i<3;i++){
array[i]=[];
}
或者还有另一种方案用eval,它会把字符串当做表达式执行
eval("var test" + i + "=" + i);
追问
感谢解答,不过在刚刚搜索的时候找到了答案~
var a ="1";
eval("test_"+a+ "=[]");
test_1.push({
x:1,
y:1
})
alert("test===="+test_1[0].x)

最后输出:test=====1
追答
我的第二种方案提到了eval是可以,它会把字符串当成表达式执行
alert(eval('5+5'));
会弹出10
观影哔哔机
2017-06-16 · TA获得超过121个赞
知道答主
回答量:91
采纳率:66%
帮助的人:24.6万
展开全部
数组本身就是一个变量 你说的这种情况不可以吧!
但是你可以换一个思路啊。例如:
var obj = {}
for( var i = 0;i<3;i++) {
obj["test"+i] = [0,i,i+1];
}
//调用
console.log(obj["test1"])
for( var i = 0;i<3;i++) {
console.log(obj["test"+i])
}
不知道你的问题我理解的对不对。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhengweilzws
推荐于2018-02-26 · 超过26用户采纳过TA的回答
知道答主
回答量:55
采纳率:100%
帮助的人:42.1万
展开全部
做过给对象动态添加属性,不知道能不能满足你的需求:
var arr=[];
for(var i=0;i<3;i++)
{
arr["row"+i]=[i,i*2,i*3];
}
赋值后可以用arr.row0[0]来调用。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式