JavaScript的array.clear()不是一个函数吗?

我试图清空一个包含我绘制的坐标当一个button“清除”被按下的数组。

当我调用drawnDivs.clear() ,我得到一个错误,它不是一个函数。 drawnDivs的确是一个数组,而且我用Firebug console.log打印出来。 它在这里托pipe 。

不,不是的。 但是, drawnDivs.length = 0应该工作。

drawnDivs = [];

这是在堆栈溢出问题的答案如何在JavaScript中清空数组?

答案的两个例子:

 var A = ['some', 'values', 'here']; //Method 1 //(This was my original answer to the question) A = []; // Method 2 (as suggested by Matthew Crumley) A.length = 0 

Axel Rauschmayer博士对这两种方法进行了详细的介绍。

一个优化的方法是:

 while (arr.pop()) {} 

请参阅http://jsperf.com/kbk-clear-array/2

您可以交替使用Prototype库,然后使用Prototype的clear()方法。