目录
  1. 1. javascript Object.create()函数
    1. 1.1. 语法
    2. 1.2. 参数
    3. 1.3. 测试<
javascript Object.create()函数

javascript Object.create()函数

Object.create() 方法会使用指定的原型对象及其属性去创建一个新的对象。

语法

1
Object.create(proto, [ propertiesObject ])

参数

1
2
3
4
proto
一个对象,应该是新创建的对象的原型。
propertiesObject
可选。该参数对象是一组属性与值,该对象的属性名称将是新创建的对象的属性名称,值是属性描述符

测试<

1参数proto为原型对象

1
2
3
4
5
6
7
8
9
10
//实现继承
function Father(){}
function Child(){}
Child.prototype=Object.create(Father.prototype);
console.log(Child.prototype.__proto__===Father.prototype)//true
console.log(Child.__proto__===Father.__proto__)//true
//
function A(){}
var a=Object.create(A.prototype);//无prototype属性
console.log(a.__proto__===A.prototype)//true

2参数proto为函数对象

1
2
3
4
5
6
7
function A(){}
var a1=Object.create(A)//有prototype属性
console.log(a1.prototype===A.prototype)//true
console.log(a1.__proto__===A)//true
//对比
var a2=new A();//无prototype属性
console.log(a2.__proto__===A.prototype)//true

3参数proto为函数实例

1
2
3
4
function A(){}
var A1=new A();
var a=Object.create(A1);//无prototype属性
console.log(a.__proto__===A1)//true
文章作者: Niko Yu
文章链接: https://www.nikoyu.asia/javascript-Object-create-%E5%87%BD%E6%95%B0.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Niko Yu Blog
打赏
  • 微信支付
  • 支付宝
  • 私人微信

评论