在下面的代码中,我创建了一个汽车对象并通过增加计数来修改一个元素。每次修改汽车时,我都会将它推到一个名为yada的阵列上。最后,我访问被放置到亚达阵列看到计数是什么3车,但它报告什么,而不是我预计的3如何在JavaScript数组元素中显示正确的值?
<html>
<body>
<script>
var car = {limit:4, count:0, trigger:0};
var yada = new Array();
for(var i=0; i<6; i++)
{
car.count += 1;
if(car.count >= car.limit)
{
car.trigger = 1;
}
yada.push(car);
alert(car.count+" "+car.limit+" "+car.trigger);
};
alert(yada[2].count + " TEST ");
</script>
</body>
</html>
只有一个'car' –
你推多次引用同一辆车。因此,数组中的所有元素都只是一个元素 - 对汽车物体的引用 –