JavaScript 原型中的新对象
示例
在JavaScript中,任何对象都可以是另一个对象的原型。当一个对象被创建为另一个对象的原型时,它将继承其父对象的所有属性。
var proto = { foo: "foo", bar: () =>this.foo};
var obj = Object.create(proto);
console.log(obj.foo);
console.log(obj.bar());控制台输出:
> "foo" > "foo"
NOTEObject.create可以从ECMAScript5获得,但是如果您需要对ECMAScript3的支持,可以使用polyfill。
if (typeofObject.create!== 'function') {
Object.create= function (o) {
function F() {}
F.prototype= o;
return new F();
};
}资料来源:http://javascript.crockford.com/prototypal.html
Object.create()
该方法使用指定的原型对象和属性创建一个新对象。Object.create()
语法:Object.create(proto[,propertiesObject])
参数:
proto(该对象应该是新创建的对象的原型。)
propertiesObject(可选。如果指定且未定义,则其可枚举的自身属性(即,在其自身上定义的那些属性,而不是其原型链中不可枚举的属性)的对象指定要添加到新创建的对象的属性描述符,并带有相应的属性名称。这些属性对应于。的第二个参数。Object.defineProperties()
返回值
具有指定原型对象和属性的新对象。
例外情况
甲类型错误异常,如果原参数不是空值或对象。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下