Javascript new意思
在JavaScript中,new
是一個關鍵字,用於創建一個對象或者實例化一個類。當使用new
操作符時,它會執行以下步驟:
- 創建一個空對象。
- 將這個空對象的原型(prototype)指向構造函式的原型對象(即
constructor.prototype
)。 - 將這個空對象賦給一個臨時變數。
- 如果構造函式有
prototype
屬性,則將this
指向這個臨時變數。 - 調用構造函式,並將
this
指向這個臨時變數。 - 如果構造函式沒有返回其他對象,則將這個臨時變數返回。
下面是一個簡單的例子:
function Person(name, age) {
this.name = name;
this.age = age;
}
Person.prototype.greet = function() {
console.log('Hello, my name is ' + this.name);
};
let person1 = new Person('John', 30);
console.log(person1.name); // John
console.log(person1.age); // 30
person1.greet(); // Hello, my name is John
在這個例子中,Person
是一個構造函式,它使用new
操作符來實例化一個新對象。person1
是Person
構造函式的一個新實例。person1
對象具有自己的屬性和方法,同時也繼承了Person.prototype
中的屬性和方法。