function Person(name,age,position){
this.name = name;
this.age = age;
this.position = position;
}
Person.prototype.displayInfo = function(){
alert("[Name: "+ this.name +"] [Age: "+this.age+"] [position: "+this.position+"]");
}
function Programmer(name,age,position){
this.tempObject = Person; //声明临时指针指向父类
this.tempObject(name,age,position);
/*
相当于调用函数Person(...),调用父类构造函数,没有new,this指向子类,
进而有:this.displayInfo = function()
相当于:this.person = function(){
this.display = function()
}
*/
delete this.tempObject; //删除临时指针,防止通过tempObject引用覆盖超类Person的属性和方法
// Person.call(this , name,age,position);
// Person.apply(this ,new Array(name,age,position));
}
Programmer.prototype = new Person();
var oBpmProgrammer = new Programmer("Kevin",24,"BPM Programmer");
var oBopReportDeveloper = new Programmer("Witkey",25,"BOP Report Developer");
oBpmProgrammer.displayInfo(); //[Name: Kevin] [Age: 24] [position: BPM Programmer]
oBopReportDeveloper.displayInfo(); //[Name: Witkey] [Age: 25] [position: BOP Report Developer]
/*
this.tempObject = Person; //声明临时指针指向父类
this.tempObject(name,age,position);
delete this.tempObject; //删除临时指针,防止通过tempObject引用覆盖超类Person的属性和方
法
以上三行代码从Person继承name,age,position属性,同理
Person.call(this , name,age,position); 和Person.apply(this ,new Array(name,age,position));
如果是使用以下方法,还是一样要有:programmer.prototype = new Person();
Person.call(this , name,age,position); 或Person.apply(this ,new Array(name,age,position));
programmer.prototype = new Person(); 继承原型方法或属性
*/
分享到:
相关推荐
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在... 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库
面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的...
原型是理解继承概念的关键, 我们将会教你如何建立原型, 如何检测一个对象是否是另外一个对象的原型, 及其 JavaScript 的模型与Java 面向对象编程之间的区别。我们同样会向你展示如何检测对象所包含的各种属性的方法...
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
JavaScript面向对象编程指南 第2版 高清 带索引书签目录_样章.pdf,风格轻松易懂,比较适合初学者,原型那块儿讲得透彻,12种继承方式呢。
风格轻松易懂,比较适合初学者,原型那块儿讲得透彻,12种继承方式等。
1.本书是唯一一本介绍JavaScript面向对象编程的图书。, 2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐。 Stoyan Stefanov:Facebook公司工程师、作家、演说家。他经常...
本人一行注释一行代码翻译了该大师的艺术作品--目的说明它是在第1,2阶段文档演示的JavaScript面向对象的书写方式的进一步改进,它是现代JavaScript面向对象编程方式(使用基本类来编码)的过渡代码--没有它就没有当今...
本文实例讲述了JavaScript面向对象程序设计中对象的定义和继承。分享给大家供大家参考,具体如下: 在面向对象的Javascript编程中,希望代码优雅有高效是非常重要的。javascript中不存在类的概念,只有对象。要想把...
实际上JavaScript并不是一门面向对象的语言,不过JavaScript基于原型链的继承方式、函数式语法,使得编程相当灵活,所以可以利用原型链来实现面向对象的编程。 之前对JavaScript一直都是一知半解,这两天看了一下...
本书是一部独具特色的面向对象技术著作。书中结合代码示例生动透彻地讲述了面向对象思想的精髓,让读者真正学会以对象方式进行思考。此外,本书还讨论了各种与面向对象概念密切相关的应用主题,包括XML、UML建模语言...
中的面向对象编程 学习目标 使用构造函数生成特定类型的对象。 使用构造函数将属性附加到新对象。 回想一下在构造函数中定义方法的成本。 通过将自定义对象附加到原型来定义自定义对象的方法。 使用 ES6 类语法重构...