问题
I'm trying to empty an array containing my drawn coordinates when a button "clear" is pressed.
When I call drawnDivs.clear()
, I get an error that it is not a function. drawnDivs
is certainly an array, and I have Firebug console.log
s printing things out. It's hosted here.
回答1:
Nope, it's not. But drawnDivs.length = 0
should work.
回答2:
drawnDivs = [];
回答3:
It was answered in Stack Overflow question How do I empty an array in JavaScript?.
Two examples from the answer:
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
And here is a nice write up on these two methods by Dr. Axel Rauschmayer.
回答4:
An optimized way to do it is:
while (arr.pop()) {}
See http://jsperf.com/kbk-clear-array/2.
回答5:
You could alternately use the Prototype library and then, use Prototype's clear()
method.
来源:https://stackoverflow.com/questions/4020548/is-javascripts-array-clear-not-a-function