JS原型,小混乱
JS prototypes, small confusion
我是javascript的新手。
我正在编写一个面向对象的程序来查找矩形和正方形的面积。我有三个类 - 形状,正方形和矩形。我想继承父类 - 形状,进入子类 - Square,我遇到了与原型相关的问题。法典:
Square.prototype= new Shape();
Square.prototype.__proto__= Shape.prototype;
我想知道:
1. 写Square.prototype= new Shape();
是否足以将类形状继承为类正方形?
2.线有什么区别:
Square.prototype.__proto__= Shape.prototype;
导致类广场。
非常感谢任何帮助,谢谢!
对于您的继承,我宁愿使用:
Square.prototype = Object.create(Shape.prototype);
Square.prototype.constructor = Shape;
出于这些原因:了解 Object.create() 和 new SomeFunction() 之间的区别
Square.prototype.__proto__= Shape.prototype;
不是一个好的做法,因为它会用另一个原型替换对象的所有原型链。此操作非常缓慢。此外,属性__proto__
已被弃用,并且可能随时消失:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/proto
相关文章:
- 使用“;这个“;JavaScript原型方法中的关键字
- 引用类变量中的原型方法
- 如何从对象的原型方法访问JavaScript对象属性
- 为什么要包装每一个原型“;类“;JS中具有匿名函数的对象
- Node.js中的JavaScript原型对象效率
- 重载JS'firefox中的对象原型
- “util.inherits”和在NodeJS中扩展原型之间的区别
- 附加到原型属性的Do函数没有闭包
- 使用方括号访问插件原型函数
- 为什么JSON.stringify没有序列化原型值
- 为什么要返回'这'在导致循环的JavaScript原型中
- 带有对象/原型的链式承诺(Q延期)
- 如何覆盖原型中的事件侦听器
- 如何在Mocha/Chai中测试JS原型(非模块)
- 我将如何将Base的原型分配给User
- Twitter Bootstrap 2.1.0子菜单在Responsive上看起来很混乱
- 原型和用法 Javascript
- 澄清:Javascript原型更新混乱
- JS原型,小混乱
- JS原型函数'this'混乱