> ecmascript 6(ES6)革新JavaScript的开发:模拟类和继承
通过提供类似类的语法和继承机制,ES6显着增强了基于原型的语言JavaScript,这是一种基于原型的语言。这使开发人员更有效地构建了大规模的Web应用程序。 关键改进包括更严格的构造函数调用规则(要求),不可设访问的方法和简化的继承。new
关键字简化了继承,从而允许从父类创建专门的子类。 extends
>关键字提供了对父类的方法和构造函数的访问,使继承直接。super
>
JavaScript的超级
在ES6 中创建类
> JavaScript的基于原型的本质允许在ES5中进行类模拟,但是ES6大大简化了这一点:es6(本机类):
var Animal = (function () { function Animal(name) { this.name = name; } Animal.prototype.doSomething = function () { console.log("I'm a " + this.name); }; return Animal; })();
ES6类提供了提高的可读性,并实施更严格的语义。 方法是不可设分的,必须使用>。调用构造函数。
class AnimalES6 { constructor(name) { this.name = name; } doSomething() { console.log("I'm a " + this.name); } }
获取器和设置器,并使用符号增强隐私new
的使用
创建了一个唯一的标识符,提供了一定程度的数据隐藏(尽管不是绝对的隐私)。>
class AnimalES6 { constructor(name) { this.name = name; this[ageSymbol] = 0; // Using Symbol for (near) private member } get age() { return this[ageSymbol]; } set age(value) { if (value < 0) console.log("Invalid age"); this[ageSymbol] = value; } // ... }
Symbol
中继承
ES6使用
<>>:<>>:>
extends
这种方法比ES5的基于原型的继承模拟更直观和可读。super
>
class InsectES6 extends AnimalES6 { constructor(name) { super(name); this[legsCountSymbol] = 6; //Using Symbol for (near) private member } // ... }
打字稿与ES6的密切相似,使其成为学习和开发ES6代码的理想工具。 它允许类型检查和改进的代码可维护性,最终生成干净的ES6(或ES5)JavaScript。 结论
ES6为JavaScript带来了重大改进,使其成为构建复杂Web应用程序的功能更强大,对开发人员友好的语言。 引入类,增强的继承以及符号和改进范围的功能,有助于更清洁,更可维护的代码。 Typescript通过提供其他工具和键入安全性进一步增强了开发过程。
>以上是了解eCmascript 6:阶级和继承的详细内容。更多信息请关注PHP中文网其他相关文章!