下面代码的输出结果是什么?前端
a = [1, 2, 3, 4];
delete a[1];
console.log(a.length);
复制代码
这个题目主要考察delete相关的知识点面试
在 JavaScript 中 delete 操做符用于删除对象的某个属性,与直观的见解不一样,delete操做符与直接释放内存无关,内存管理是经过断开引用来间接完成的。数组
delete
成功删除的时候返回 true,不然返回 false。可删除对象以下描述:bash
示例:this
function fun(){
this.name = 'mm';
}
var obj = new fun();
console.log(obj.name);//mm
delete obj.name;
console.log(obj.name); //undefined
复制代码
var name = 'lily';
delete name;
console.log(name); //lily
复制代码
function fun(){
this.name = 'mm';
}
fun.prototype.age = 18;
var obj = new fun();
delete obj.age;
console.log(obj.age) //18
复制代码
面试题目中,删除数组元素,不会改变数组元素的长度,仅仅是将元素变为empty spa
扫一扫 关注个人公众号【前端名狮】,更多精彩内容陪伴你! prototype