extends in javascript

复制代码
function extend(subClass,superClass){
    var F = function(){};
    F.prototype = superClass.prototype;
    subClass.prototype = new F();
    subClass.prototype.constructor = subClass;
}


function Person(name){
    this.name = name;
}
Person.prototype.getName = function(){
    return this.name;
}

function Author(name,books){
    Person.call(this,name);
    this.books = books;
}
Author.prototype.getBooks = function(){
    return this.books;
}

extend(Author,Person);


var p = new Person("张三");
var a = new Author("刘畅");

console.log(p.getName());
console.log(a.getName());
相关推荐
吴声子夜歌5 小时前
ApacheCommons——commons-pool2(高性能通用对象池框架)
java·开发语言·apache
_阿南_9 小时前
项目中新增给AI制定的代码规范
前端·程序员
名字还没想好☜10 小时前
React 实现暗黑模式切换:localStorage 持久化、SSR 首屏闪烁与跟随系统主题
前端·javascript·react.js·ecmascript·react·next.js
kruptos10 小时前
分布式系统怎么“选主“?Raft 共识一次讲清
开发语言·分布式·php·共识算法
吴声子夜歌10 小时前
ApacheCommons——commons-cli(命令行参数解析)
java·开发语言·apache
自动化监测Learner10 小时前
主流 Web 端地图引擎对比:选型指南与优劣分析
javascript
console.log('npc')11 小时前
Git 冲突与 AI 协助指南
前端·人工智能·git·大模型
benchmark_cc11 小时前
REST API 和 Python SDK 应该怎么选?量化交易数据接口选型实战
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
王的宝库11 小时前
Go 项目结构:从单文件到标准工程布局
开发语言·后端·golang
Tairitsu_H11 小时前
[C++] 深入理解红黑树:封装set与map
开发语言·c++·set·map·红黑树·模拟实现