美文网首页
Javascript面向对象编程(三):非构造函数的继承

Javascript面向对象编程(三):非构造函数的继承

作者: day_day_up | 来源:发表于2017-03-28 11:35 被阅读0次

[参考 Javascript面向对象编程(三):非构造函数的继承](http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_inheritance_continued.html

一、什么是"非构造函数"的继承?

请问怎样才能让"医生"去继承"中国人",也就是说,我怎样才能生成一个"中国医生"的对象?这里要注意,这两个对象都是普通对象,不是构造函数,无法使用构造函数方法实现"继承"。
比如,现在有一个对象,叫做"中国人"。

var Chinese = {
    nation:'中国'
  };
var Doctor ={
    career:'医生'
  }
二、object()方法

json格式的发明人Douglas Crockford,提出了一个object()函数,可以做到这一点。

function object(o) {
    function F() {}
    F.prototype = o;
    return new F();
  }
var Doctor = object(Chinese);
 Doctor.career = '医生';
 alert(Doctor.nation); //中国

相关文章

网友评论

      本文标题:Javascript面向对象编程(三):非构造函数的继承

      本文链接:https://www.haomeiwen.com/subject/nghjottx.html