javascript继承==>prototype简单使用
1,原型链实例
2,将公共属性迁移到原型中
3,只继承原型
4,临时构造器--new F()使用
下面写的简单实例:
function shape(){}
shape.prototype.name = 'name';
shape.prototype.toString = function(){
return this.name
}
function tweShape(){}
var F = function(){}
F.prototype = shape.prototype;
tweShape.prototype = new F();
tweShape.prototype.constructor = tweShape;
tweShape.prototype.name= '2d Shape';
function triangle(side,height){
this.side = side;
this.height = height;
}
var F = function(){}
F.prototype = tweShape.prototype
triangle.prototype = new F();
triangle.prototype.constructor = triangle;
triangle.prototype.name = 'Triangle';
triangle.prototype.getArea = function(){
return this.side * this.height / 2;
}
chrom浏览器console控制台进行调试如下:
var tri = new triangle(10,15);
tri.getArea();
==>75
tri.constructor
==>function triangle(side,height){
this.side = side;
this.height = height;
}
var twe = new tweShape();
twe.constructor;
=>function tweShape(){}
twe.name;
=>2d Shape
var shp = new shape();
shp.construtor;
=>function shape(){}
shp.name
=>name
如果我们不使用临时构造器,在实例化shape和tweShape执行的原型都是triange,输入对应的实例化对象
twe.name 或者 shp.name结果都是
==>Triangle
相关推荐
在JavaScript中,`prototype`是一个核心概念,它与对象的继承和方法共享密切相关。当我们谈论“getter in value prototype”时,我们关注的是如何在对象的原型链上定义和调用getter函数,这是一个用于获取对象属性值...
在JavaScript中,对象可以通过原型链实现继承。通过`Object.prototype`,我们可以为所有对象添加方法。然而,一些库或框架,包括Ember,有时会直接扩展JavaScript的基本类型(如Array、String、Number等)的原型,以...
扩展js Javascript继承-正确的方法。 比您在其他地方看到的要好。 要在浏览器中使用,只需将extends.js添加到您的项目中: [removed][removed]要在您的节点项目中使用,请通过npm安装: npm install extends-js只需...
在本章中,我们将分析Prototypejs中关于JavaScript继承的实现。 Prototypejs是最早的JavaScript类库,可以说是JavaScript类库的鼻祖。 我在几年前接触的第一个JavaScript类库就是这位,因此Prototypejs有着广泛的...
JavaScript的原型继承是其面向对象编程的一大特性,它基于原型链机制实现,允许一个对象可以从另一个对象继承属性和方法。这种继承方式不同于类继承,而是通过将子类的原型对象设置为父类的一个实例来实现。 在...
本文将深入探讨JavaScript中的类和继承,并结合`prototype.js`文件中的示例进行解析。 ### 类的概念与模拟 在JavaScript中,我们通常使用函数来模拟类的行为。一个函数可以看作是一个类的定义,通过`new`关键字来...
理解原型和原型链是掌握JavaScript面向对象编程的关键,这涉及到对象的继承、方法的调用以及如何使用Object.create()、__proto__和prototype属性。 事件处理是JavaScript在网页交互中不可或缺的部分。你将学习如何...
2. prototype与__proto__:两者都与原型链有关,prototype是构造函数的属性,__proto__是实例对象的属性,它们连接了对象间的继承关系。 3. 类与继承:ES6引入了class关键字,虽然在语法上更像传统的面向对象语言,...
原型(Prototype)是JavaScript实现继承的基础,每个对象都有一个`__proto__`属性,指向创建它的构造函数的原型对象。通过原型,子类可以共享父类的属性和方法,减少了代码的重复。此外,JavaScript的灵活性允许...
Prototype.js 是一个强大的JavaScript类库,它为开发者提供了丰富的功能,使得创建具有高度互动性和Web2.0特性的富客户端页面变得更为简单。这个库的设计理念是扩展JavaScript的基础对象,提供一套统一且易于使用的...
JavaScript中的`prototype`是一个核心概念,它涉及到对象继承和函数原型。在JavaScript中,每创建一个函数,该函数就会自动获得一个名为`prototype`的属性,这个属性是一个对象,用于实现对象间的继承。同时,每个...
5. **寄生组合式继承**:结合了寄生式继承和组合继承的优点,是JavaScript中推荐的继承方式,可以在`Javascript面向对象编程(三):非构造函数的继承.docx`中找到更详细的解释。 例如,使用寄生组合式继承: ```...
在前端开发中,JavaScript 是一种常用的面向对象编程语言,它提供了继承这一机制,使得我们可以创建新的对象类,这些新类可以扩展已有的类的功能。在本节课程“第十二课 继承-011”中,我们将深入探讨 JavaScript 中...
### JavaScript 学习 - 提高篇 ...总之,在 JavaScript 中,对象是非常强大的概念,它不仅支持简单的键值对存储,还能够通过函数和原型链来实现复杂的逻辑和行为。掌握对象的概念对于深入理解 JavaScript 至关重要。
8. **面向对象编程**:可能涉及到JavaScript的类(class)和原型(prototype)机制,学习如何创建和使用对象,以及继承和多态的概念。 9. **错误处理**:理解如何使用`try...catch`语句来捕获和处理运行时错误,...
此项目“tooltip-js-with-inheritance-prototype”旨在展示如何利用原型继承设计模式创建一个简单的工具提示功能,涉及到CSS、HTML和JavaScript的结合应用。 首先,让我们深入了解JavaScript中的原型继承。在...
JavaScript,作为一种广泛应用于Web开发的脚本语言,其高级特性如闭包(closures)、原型(prototype)和继承(inheritance)是理解其精髓的关键。本文将深入探讨这些概念,帮助开发者更好地掌握JavaScript的核心。 ...
JavaScript 原型链是语言的核心特性之一,它在实现对象的继承和共享属性时起着关键作用。本文将深入探讨JavaScript原型链的工作原理及其可能导致的安全问题——原型链污染。 首先,JavaScript 中的对象继承并不像...
Prototype的核心理念是通过模拟传统面向对象编程语言的特性,如类、继承和封装,来提升JavaScript的开发体验。 **Prototype的主要版本** 1. **Prototype 1.4**:这个版本为开发者引入了基础的类和对象的概念,使得...
我们已经在第一章中使用prototype属性模拟类和继承的实现。 prototype属性本质上还是一个JavaScript对象。 并且每个函数都有一个默认的prototype属性。 如果这个函数被用在创建自定义对象的场景中,我们称这个函数为...