ES5コンストラクター構文の例:
function CrtObj(name、age、sex){
//属性を定義します
this.name = name;
this.age =年齢;
this.sex = sex;
}
//コンストラクタのプロトタイププロパティで、オブジェクトをインスタンス化するメソッドを定義します
CrtObj.prototype.fun = function(){
console.log(this.name、this.age、this.sex);
}
//プロトタイプの後で関数を呼び出します
ES5コンストラクター構文を介してコンストラクターを呼び出し、プロトタイプを定義した後、インスタンス化されたオブジェクトを生成します
それ以外の場合は、生成されたインスタンス化されたオブジェクト、属性のみが関数メソッドを持たない
Funクラス{
//キーワードコンストラクターで属性を定義します
コンストラクタ(名前、年齢){
this.name = name;
this.age =年齢;
}
//クラスのキーワードコンストラクタの後に関数メソッドを定義します
f(){
console.log(this.name、this.age);
}
}
//クラスの後に関数を呼び出し、前のクラスを呼び出すと、事前に解析されず、エラーが報告されます
const obj = new Fun( 'Zhang San'、18);
console.log(obj);
ES6では、コンストラクターを定義するための新しい構文である新しい構文クラスclassが追加されています。
機能と原理はES5の文法とまったく同じですが、文法の形式と記述方法が異なります。