delete用法 与 object的创建
一、delete用法
1. 删除对象属性
function fun(){
this.name = 'kk';
}
var obj = new fun();
console.log(obj.name);//kk
delete obj.name;
console.log(obj.name); //undefined
2. 不能删除变量
var name = 'Mary';
delete name;
console.log(name); //Mary
3. 不能删除原型链上的数据
fun.prototype.name = 'ww';
delete obj.name ;
console.log(obj.name ) //ww
二、object的创建
1. Object.create(proto, [propertiesObject])
1.参数介绍:
- proto:创建新对象的原型指向。可以为null,表示没有原型对象。
- propertiesObject:可以选填,创建新对象的自我属性
2. new Object( [propertiesObject])
- 参数介绍:
- propertiesObject:可以选填,创建新对象的自我属性。为空或null时创建的是空对象
- 注意:创建新对象的原型永远指向Object.prototype.
三、 遇到的相关问题
var person={
name:'w'
};
var person1 = Object.create(person);
delete person1.name;
console.log(person1)//{},prototype:{name:'w'}
console.log(person1.name)//w
!:delete删除不了原型上的数据