查阅了一下资料,总体来说Javascript清空数组一共有三种方法:
方法1:使用splice
这是Javascript中Array对象自身提供的方法,API文档中的说明是:Adds and/or removes elements of an array. Changes the content of an array, adding new elements while removing old elements. 语法:splice(index, howMany, newElt1, newElt2...) 具体用法大家可以自己去查一下
清空数组方式:arr.splice(0, arr.length);
方法2:将数组的length赋值为0
这种方法使用惯了Java等语言的人可能不能接受,因为在Java中length属性是只读的 但是JS中确可以
arr.length = 0;
方法3:直接将数组赋值为空数组
这种方法并不能说是清空数组 而是将你提供的数组索引指向了另一个新的空数组 实现了清空的效果
与方法2相比 方法2保留了原数组的其他属性 仅仅是把length变为了零 而这种方法不会保留 因为他完全变成了一个新数组
arr = [];
至于效率问题 我并没有测试 不过在网上看到其他帖子里说 方法3的效率更高一些 EXT中清空数组也是用的方法3