猿问

关于JavaScript中类和数组的使用

rt,定义一个类pockers,它是数组有成员变量color和number

首先做一个实验 想让pockers[0].color=0  pockers[0].number=0  pockers[1].color=1  pockers[1].number=1

于是写了如下代码

var pockers=[]; //定义一个数组
var card={}; //定义了类
card.color=0;
card.number=0;  //把0 赋给card.color和card.number中
pockers.push(card); //把符号值得card添加到数组pockers中
card.color=1;  //同上
card.number=1;
pockers.push(card);
document.wirte(pockers.length);  //输出数组长度 检验是否已经把card传进数组
document.write(pockers[0].color+" "+pockers[0].number); //输出card的color 和number值 看是否传对
document.write(pockers[1].color+" "+pockers[1].number);//同上

本想让他输出 2    0 0  1 1

但它输出了 2   1 1  1 1

长度等于2 说明传进数组正常  我想知道 pockers[0]的color和number值去哪了。。。怎样改正?

慕娘0575415
浏览 1126回答 1
1回答

qq_青枣工作室_0

var pockers=[]; //定义一个数组 var card={}; //定义了类 card.color=0; card.number=0;  //把0 赋给card.color和card.number中 pockers.push(card); //把符号值得card添加到数组pockers中 card = {};    // 【增加这行。因为card是对象,是引用传值的,如果你不新建一个,就会使用上一个了。】 card.color=1;  //同上 card.number=1; pockers.push(card); document.write(pockers.length);  //输出数组长度 检验是否已经把card传进数组 document.write(pockers[0].color+" "+pockers[0].number); //输出card的color 和number值 看是否传对 document.write(pockers[1].color+" "+pockers[1].number);//同上
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答