今天开始学习js,看到了js继承的方式.记录下来:
利用对象的call方法对父类进行初始化:下面用经典的图形例子来说明:
先定义一个形状Polygon
js 代码
- function Polygon(iSides) {
- this.sides = iSides;
- }
-
- Polygon.prototype.getArea = function() {
- return 0;
- }
下面定义两个子类,一个三角形Triangle,一个矩形Rectangle:
三角形;
js 代码
- function Triangle(iBase,iHeight) {
-
- Polygon.call(this,3);
- this.base = iBase;
- this.height = iHeight;
- }
-
- Triangle.prototype = new Polygon();
-
-
- Triangle.prototype.getArea = function() {
- return 0.5 * this.base * this.height;
- }
矩形:
js 代码
- function Rectangle(iLenght,iWidth) {
- Polygon.call(this,4);
- this.length = iLenght;
- this.width = iWidth;
- }
-
- Rectangle.prototype = new Polygon();
-
- Rectangle.prototype.getArea = function() {
- return this.length * this.width;
- }
测试一下:
js 代码
- function testFunc() {
- var triangle = new Triangle(12,4);
- var rectangle = new Rectangle(22,10);
-
-
- alert("[ " +triangle.sides + " : " + triangle.getArea() + " ][ " + rectangle.sides + " : " + rectangle.getArea() + " ]");
-
- }
新建一个html界面进行调用,用于本js是定义到一个单独的js文件中,需要在html中引入此js文件
js 代码
- <script type=< span="">"text/javascript" src="test.js"></script>
运行结果为:
见附件图面...
- 大小: 7.9 KB
分享到:
- 2007-02-20 21:17
- 浏览 3032
- 评论(0)
- 论坛回复 / 浏览 (0 / 4015)
- 查看更多
相关推荐
几乎每个开发人员都有面向对象语言(比如C++、C#、Java)的开发经验。...但是在JavaScript的世界中,所有的这一切特性似乎都不存在。 因为JavaScript本身不是面向对象的语言,而是基于对象的语言。
本文将介绍 JavaScript 中的 9 种继承实现方式,帮助读者更好地理解 JavaScript 的继承机制。 1. 原型链继承 原型链继承是 JavaScript 中实现继承的默认方式。如果要让子对象继承父对象,可以将子对象构造函数的 ...
下面将详细介绍几种常见的继承实现方式,并探讨它们的特点与应用场景。 #### 一、原型链继承 **核心思想**: 将父类的实例设置为子类的原型。 **实现方式**: ```javascript function Animal(name) { this.name = ...
本篇文章将深入探讨JavaScript中实现继承的几种常见方式。 1. 原型链继承 JavaScript的原型(prototype)机制是实现继承的基础。每个函数都有一个prototype属性,这个属性指向一个对象,这个对象的属性和方法可以被...
javascript中如何实现封装,继承和多态
### JavaScript继承实现示例 #### 知识点概述 在JavaScript中,继承是一种常见的对象间关系,它允许一个对象(子类)继承另一个对象(父类或超类)的属性和方法。通过继承,可以复用代码、提高程序的可维护性,并...
在JavaScript中,面向对象编程是通过构造函数、原型链和继承实现的。继承是面向对象编程的核心概念之一,它允许我们创建一个新对象,该对象继承现有对象的属性和方法。在JavaScript中,实现继承有多种方式,每种方式...
js没有特别明确的实现如何继承,但是能够通过特殊手段实现继承的,有四种方法
在JavaScript中,面向对象编程是实现复杂功能和代码复用的关键。继承是面向对象的核心特性之一,它...文章中的`inheritance.html`和`inheritance.js`文件可能包含示例代码,帮助你直观地了解每种继承方式的实现和使用。
在深入研究 JavaScript 继承时,还需要了解其他相关概念,如 `Object.create()`、`instanceof`、`call()`、`apply()` 和 `bind()` 等方法,它们在继承实现中起到关键作用。同时,ES6 中引入的 `class` 关键字和 `...
详细介绍了JavaScript中继承的实现方式以及其优缺点分析。
使用js实现继承的七种方式,详细讲解了js中的原型链继承,构造函数继承,组合继承(经典继承),原型式继承,寄生式继承,寄生组合式继承,以及ES6中的继承,描述原理以及实现和要点概述等。
本文从以下四个方面展开话题: ...正因如此,我从没想过下次写继承的时候,我要换一种方式来写,直到今天晚上看了三生石上关于javascript继承系列的文章(出的很早,现在才看,真有点可惜),才发现在js里
javascript中如何实现封装,继承和多态,并有详细,我天天在传谢谢
本文档将探讨JavaScript中的继承实现方式及其优缺点。 首先,我们需要理解JS中的对象与类的区别。在JS中,对象可以直接通过字面量语法创建,例如`var myObj = {...}`,这种对象不能通过`new`关键字实例化,因此它...
大多OO语言都支持两种继承方式: 接口继承和实现继承 ,而ECMAScript中无法实现接口继承,ECMAScript只支持实现继承,而且其实现继承主要是依靠原型链来实现,下文给大家技术js实现继承的六种方式,需要的朋友参考下
在JavaScript中,实现类式继承是面向对象编程中的一个关键概念。JavaScript本身是一种基于原型的动态类型语言,但在ES6引入了`class`语法糖,使得类的概念更加清晰,但其实质仍然是基于原型的继承。下面我们将深入...
`zInherit`是JavaScript中一种常见的对象继承实现方式。 在JavaScript中,有多种实现继承的方法,包括原型链继承、构造函数继承、组合继承、寄生继承、原型式继承、共享原型等。`zInherit`是其中的一种自定义实现,...
总结起来,JavaScript中的继承可以通过原型链继承、apply/call方法以及对象实例间的继承三种方式实现。每种方式都有其特点和适用场景,开发人员可以根据具体需求和上下文环境选择合适的继承方式。原型链继承能够创建...