ES6 では、コンストラクター関数とそれが作成するプロトタイプの記述に利点をもたらす新しいクラス構文が導入されています。
クラス構文により、コンストラクター関数の作成が簡素化され、継承階層がより簡単に設定されます。古い ES5 構文に関連する一般的なエラーが排除されます。
構文上の利便性を超えて、クラス構文により次のことが可能になります。
ES2015 :
class Person { constructor(first, last) { this.first = first; this.last = last; } personMethod() { // ... } }
ES5:
function Person(first, last) { this.first = first; this.last = last; } Person.prototype.personMethod = function() { // ... };
// ES2015+ class Person { constructor(first, last) { this.first = first; this.last = last; } personMethod() { return `Result from personMethod: this.first = ${this.first}, this.last = ${this.last}`; } } class Employee extends Person { constructor(first, last, position) { super(first, last); this.position = position; } personMethod() { const result = super.personMethod(); return result + `, this.position = ${this.position}`; } } class Manager extends Employee { constructor(first, last, position, department) { super(first, last, position); this.department = department; } personMethod() { const result = super.personMethod(); return result + `, this.department = ${this.department}`; } }
以上がES6 でクラス構文を使用することの、従来の ES5 コンストラクター関数アプローチと比較した主な利点は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。