新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
方式1,splice
创新互联自2013年创立以来,先为古塔等服务建站,古塔等地企业,进行企业商务咨询服务。为古塔企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
1
2
3
var ary = [1,2,3,4];
ary.splice(0,ary.length);
console.log(ary); // 输出 [],空数组,即被清空了
方式2,length赋值为0
这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值。如
1
2
int[] ary = {1,2,3,4};
ary.length = 0;
Java中会报错,编译通不过。而JS中则可以,且将数组清空了,
1
2
3
var ary = [1,2,3,4];
ary.length = 0;
console.log(ary); // 输出 [],空数组,即被清空了
目前 Prototype中数组的 clear 和mootools库中数组的 empty 使用这种方式清空数组。
1、新建一个html文件,命名为test.html,用js删除图片。
2、在test.html文件内,使用p标签创建多段文字,同时设置每个p标签id属性,主要用于下面使用js获得对应的p标签对象。
3、在test.html文件内,使用button标签创建一个“删除html”的按钮。
4、在test.html文件内,给button按钮绑定onclick点击事件,当按钮被点击时,执行delhtml()函数。
5、在js标签内,创建delhtml()函数,在函数内实现对指定的p图片进行删除。
6、在myfun()函数内,通过getElementById()方法获得p标签对象,使用remove()方法删除html。在浏览器中打开test.html文件,点击按钮,就可以了。
当一个数组需要清空的时候,很多人使用下面的方法:
复制代码 代码如下:a = [];
我们知道javascript变量存储方式分为引用类型和直接量。数组属于对象,即引用类型,引用的是变量指针地址,之所以这样设计也是为了节省内存。
再说到上面的请空数组的方式,如果采用直接赋值一个新数组的方式,那么之前引用的数组可能不会被释放(有其他的引用),例如下面的代码:
复制代码 代码如下:var a = [2,3];var b = a;a = [];console.log(b);
这时候a和b就不是同一个数组了,清空了a而b还是指到之前的引用地址,除非你是故意的,否则这将会有隐患。
所以最佳的请空数组方式是:将length设置为0,即:
复制代码 代码如下:a.length = 0;
清空数组并塞入新数据的方法:
注意:splice 返回的是含有被删除的元素的数组,没有删除的话返回空数组:
参考:
js清空数组的三种方法