您的位置:首页 > 移动开发 > Objective-C

Object.create

2016-03-15 00:16 477 查看
Object.create(parent):

三件事: 1. 创建一个对象

2. 继承指定父对象

3. 为新对象扩展新属性

何时使用create: 希望在创建对象时就提前指定继承的父对象,并同时扩展新属性时。

作业: 完成课堂练习:

1. 创建hmm对象继承father,同时扩展phone属性

2. Object.create的实现原理:

<span style="font-size:18px;">
//不可能实现所有浏览器都支持Objecet.create,一部分可重写
//Objecet.create 的实现步骤3
//自定义Object.create方法
if(Object.mycreate===undefined){
Object.mycreate=function(parent,props){
<span style="background-color: rgb(255, 102, 102);">//1:创建一个新对象
var obj=new Object();
//2:设置新对象继承parent
Object.setPrototypeOf(obj,parent);//IE9+
//3:为新对象扩展属性</span>
Object.defineProperties(obj,props);//IE9+ ES5的新标准
//返回新对象
return obj;
}
}

var father={bal:1000,car:"=b="}
//var hmm=Object.create(father);
var hmm=Object.mycreate(father,{//create调用的也是defineproperty
phone:{//默认为false
value:"肾6s",
writable:true,
enumertable:true,
configurable:true.
},
});
console.log(hmm.hasOwnProperty("bal"));//false,可以用,但是存到父类那里
console.log(hmm.bal);//子继承父,也可扩展自己的属性
console.log(hmm.car);
console.log(hmm.phone);</span>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: