博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
b继承a
阅读量:4680 次
发布时间:2019-06-09

本文共 589 字,大约阅读时间需要 1 分钟。

有下面这样的一段代码:

function a(){  this.foo = function(){    console.log('foo');  }}var b = {};

请问如何让b继承a?

b.__proto__ = new a();b.__proto__.constructor = Object;

注意不能写成

b.proto = a.prototype

因为a函数中的代码,并不属于prototype对象。

如果a也是一个对象呢

var a = {  foo:function(){    console.log('foo');  }};var b = {};

请问如何让b继承自a

b.__proto__ = a;

如何实现多重继承

虽然javascript并不提供多重继承,但我们可以借用多个对象来实现。

var a  = {    fn:function(){        console.log(133);    }};var b = {    a:1};b.__proto__ = a;b.__proto__.constructor = Object;var c = {};c.__proto__ = b;

但这也是有缺陷的,平白无故将b的原型加到了a上。

转载于:https://www.cnblogs.com/pssp/p/6822685.html

你可能感兴趣的文章