今天写了一个程序,需要使用一个Javascript函数传递一个对象,代码如下:for (var i = 0; i < customers.length; i++) {
var custom = customers[i];
showName(custom);
} 这样写,传递过去的都是数组的最后一个对象,即customers[customer.length-1];这个我到还能理解
可是,为了达到我想要的目的,代码改为如下:
for (var i = 0; i < customers.length; i++) {
var custom = new Object();
custom = customers[i];
showName(custom);
}
结果传递过去的仍然是数组的最后一个值,这到底是为什么呢,怎么才可以实现传递一个当前值(customers[i])呀!
var custom = customers[i];
showName(custom);
} 这样写,传递过去的都是数组的最后一个对象,即customers[customer.length-1];这个我到还能理解
可是,为了达到我想要的目的,代码改为如下:
for (var i = 0; i < customers.length; i++) {
var custom = new Object();
custom = customers[i];
showName(custom);
}
结果传递过去的仍然是数组的最后一个值,这到底是为什么呢,怎么才可以实现传递一个当前值(customers[i])呀!
可能是你代码其他地方出现了问题。
你测试下边的代码就知道了:
<html>
<head>
</head>
<script type="text/javascript">
var customers = [];
customers[0] = "0";
customers[1] = "1";
customers[2] = "2";
for (var i = 0; i < customers.length; i++) {
var custom = customers[i];
showName(custom);
} function showName(custom)
{
alert(custom);
}
</script>
<body>
</body>
</html>