在实际开发中,有时候需要把js中数组和对象进行重置,下边介绍几种写法:
数组的重置:
方式1:使用splice
var ary = [1,2,3,4];
ary.splice(0,ary.length);
console.log(ary); // 输出 [],空数组,即被清空了
结果如下:
方式2:将数组长度length置为0
var ary = [1,2,3,4];
ary.length = 0;
console.log(ary);
结果如下:
方式3:重新赋值为一个空数组
var ary = [1,2,3,4];
ary = []; // 赋值为一个空数组以达到清空原数组
console.log(ary);
效果如下:
参考https://www.cnblogs.com/snandy/archive/2011/04/04/2005156.html
对象的重置:
使用Delete方法遍历删除对象中的属性,但是原型中的属性不会被删掉
var obj = {name:"a",age:12}; //js创建对象时会默认调用Object构造函数
Object.prototype.sex = 'man';
console.log(obj);
console.log(obj.name);
console.log(obj['name']);
for(var key in obj){
delete obj[key];
}
console.log(obj);
结果如下:
可以看到原型中被赋予的属性sex还在,并未被删除。