10

我的脚本创建一个空数组,然后填充它。但是如果有新的参数出现,那么脚本应该会破坏旧的并创建新的。

var Passengers = new Array();

function FillPassengers(count){
    for(var i=0;i<count;i++)
        Passengers[i] = i;
}

我想销毁旧的,因为新的计数可能小于旧的,并且数组的最后一个元素仍然会存储旧数组?是这样吗?如果是这样,我怎么能摧毁它?

4

4 回答 4

11

这将创建一个新的空数组Passengers = []。不知道你应该做什么。

要不就Passengers.length = 0;

于 2013-04-26T14:18:04.523 回答
7

您可以简单地这样做来清空数组(不更改数组对象本身):

Passengers.length = 0;

或者,使用您的代码:

function FillPassengers(count){
    for(var i=0;i<count;i++)
        Passengers[i] = i;
    Passengers.length = count;
}
于 2013-04-26T14:17:35.147 回答
3

很简单

riz = [];

或者

riz.length = 0;
于 2013-04-26T14:21:54.470 回答
2

您可以重新分配一个新的Array实例

Passengers = [ ];

分别

Passengers = new Array();

垃圾收集器直到照顾其余部分。

于 2013-04-26T14:18:45.330 回答