Is JavaScript's array.clear() not a function? [duplicate]

牧云@^-^@ 提交于 2019-12-03 06:28:01

问题


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.logs 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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!