1.原型链实例
来源:互联网 发布:淘宝客服公司图片 编辑:程序博客网 时间:2024/06/06 07:14
//构造函数------------ function Shape() { this.name = "Shape"; this.toString = function() { return this.name; } } //构造函数------------ function TwoShape() { this.name = "2D shape"; } //构造函数------------ function Triangle(side, height) { this.name = "Triangle"; this.side = side; this.height = height; this.getArea = function() { return this.side * this.height / 2; } } //这里通过new对象来实现赋值的所以不会对原来对象有任何影响, //!!必须在拓展原型对象属性前完成继承关系的构建,否则会被覆盖 TwoShape.prototype = new Shape(); Triangle.prototype = new TwoShape(); //修改对象constructor的指向 TwoShape.prototype.constructor = TwoShape; Triangle.prototype.constructor = Triangle;//A. //开始测试,尽管Triangle本身并没有toString方法, //但是通过继承获取到了相应的toStrig方法,同时这里的this指向实例后的my var my = new Triangle(5, 10); console.log(my.toString()); console.log(my.side); //my的构造函数是谁呢? console.log("my的构造函数是谁呢?---------"); console.log(my.constructor ===Triangle);//在A处我们明确把Triangle的constructor指向了Triangle console.log("通过instanceof来主动查找实例my对象的构造函数是谁?"); console.log(my instanceof Triangle);//true console.log(my instanceof TwoShape);//true console.log(my instanceof Triangle);//true console.log("通过构造函数sPrototypeOf方法来判断是否拥有相应的实例------------") console.log(Shape.prototype.isPrototypeOf(my));//trueconsole.log(TwoShape.prototype.isPrototypeOf(my));//trueconsole.log(Triangle.prototype.isPrototypeOf(my));//true
实例效果:http://runjs.cn/code/eh8zpcs8
1 0
- 1.原型链实例
- js原型链实例
- 原型链继承实例
- JavaScript原型与原型链以及实例
- 【笔记】javascript原型链继承实例
- JS原型继承实例
- js原型proto实例
- 原型对象与实例
- JavaScript 原型与实例
- js 实例 及 原型
- 完整原型链详细图解(构造函数、原型、实例化对象)
- 关于js中,原型对象,原型链,构造函数,实例之间关系的理解与区别
- 完整原型链详细图解(构造函数、原型、实例化对象)
- 【JavaScript】JavaScript原型链之原型对象、实例和构造函数三者之间的关系
- js对象继承之原型链继承实例
- 1.1原型链(实例化 new 对象继承)
- 原型与原型链
- 原型 和 原型链
- object-c中Foundation框架-NSString与NSMutableString
- sed的多行模式模式
- 表哥的iOS 与 JS
- 浅谈js变量作用域
- android加载GIF动画
- 1.原型链实例
- 自定义View实战(一) 汽车速度仪表盘
- Yii创建模板
- (android 调试工具)chrome应用 Vysor 推荐
- 2016广东省赛反省
- HTTP 幂等性
- platform-tools\adb.exe,start-server' failed -- run manually if necessary,adb启动失败,端口被占用
- myeclipse启动tomcat内存溢出java.lang.OutOfMemoryError
- [J2SE]s02e03.两个错误处理的例子(课后练习)