js怎么循环出变量,然后一个个储存到数组中?
5个回答
展开全部
举个简单例子,希望你能明白,
1、下面输出结果是"jim",而不是"tom",
是因为数组中保存的都是指向json对象a的地址,
dd[0],dd[1],dd[2],dd[3]对象指向的内存地址相同,
当修改其中一个dd[0]的属性值的时候,数组所有元素指向的对象属性值都改变了。
var dd = [];
var a = { "cname": "tom" };
for (var i = 0; i <4; i++) {
dd[i] =a;
}
dd[0].cname = "jim";
alert(dd[2].cname);
2、下面输出结果是0,而不是1,
是因为数组元素dd[0],dd[1],dd[2],dd[3]对应的内存地址都不同,互不干扰。
var dd = [];
var a = 0;
for (var i = 0; i <4; i++) {
dd[i] =a;
}
dd[0]=1;
alert(dd[2]);
希望对你有帮助!
更多追问追答
追问
这个我明白,我直接说我要实现的功能吧,我需要用一个数组来储存子弹,子弹数量是N个,子弹还有速度,方向的这些属性,这样该怎么实现。
追答
就用json对象数组保存:
var bullets = [{ "Speed": "200", "Direction": "向右" }, "Speed": "220", "Direction": "向后" }];
bullets[2] = {"Speed": "200", "Direction": "向后" };
现在bullets数组有三个子弹对象了。
展开全部
var students=[
{name:"陈强",age:12},
{name:"张强",age:15},
{name:"张剑",age:13},
{name:"杨兴豪",age:44}
]
var arr=[];
for(var i=0;i<students.length;i++){
arr.push(students[i]['age']);
}
console.log(arr);
document.write(arr.sort());
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义数组,在循环中使用put方法就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-04
展开全部
说清楚
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能不能具体一点儿
更多追问追答
追问
for (var i = 0; i < bullnumber; i++) {
Tank.bullet[i] = eval('var bull'+i+';');
}
类似这样的,但是这样好像不行 就是我不想一个个去定义变量,想用循环一个个循环出来,然后一个个给数组。
追答
看不太明白你说的,不管怎么样,变量都要进行初始化才能赋值给其它变量。如果你这一组数据有规律的话就可以不一一初始化变量了,比如:
var a=1;
var b=new Array(10);
for(var i=0;i<b.length;i++)
{
b[i]=a+i;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询