在本教程中,我們將借助示例了解 JavaScript Object.create() 方法。
Object.create()
方法使用給定對象的原型創建一個新對象。
示例
let Student = {
name: "Lisa",
age: 24,
marks: 78.9,
display() {
console.log("Name:", this.name);
}
};
// create object from Student prototype
let std1 = Object.create(Student);
std1.name = "Sheeran";
std1.display();
// Output: Name: Sheeran
create() 語法
用法:
Object.create(proto, propertiesObject)
create()
方法是靜態方法,使用Object
類名調用。
create()參數
create()
方法包含:
proto
- 應該是新創建對象的原型的對象。propertiesObject
(可選)- 一個對象,其可枚舉的自身屬性指定要添加到新創建對象的屬性說明符。這些屬性對應於Object.defineProperties()
的第二個參數。
create() 返回值
- 返回具有指定原型對象和屬性的新對象。
注意:如果原型不是null
或一個Object
,TypeError
被拋出。
示例:使用對象。create()
let Animal = {
isHuman: false,
sound: "Unspecified",
makeSound() {
console.log(this.sound);
},
};
// create object from Animal prototype
let snake = Object.create(Animal);
snake.makeSound(); // Unspecified
// properties can be created and overridden
snake.sound = "Hiss";
snake.makeSound(); // Hiss
// can also directly initialize object properties with second argument
let properties = {
isHuman: {
value: true,
},
name: {
value: "Jack",
enumerable: true,
writable: true,
},
introduce: {
value: function () {
console.log(`Hey! I am ${this.name}.`);
},
},
};
human = Object.create(Animal, properties);
human.introduce(); // Hey! I am Jack.
輸出
Unspecified Hiss Hey! I am Jack.
相關用法
- JavaScript Object.isPrototypeOf()用法及代碼示例
- JavaScript Object.assign()用法及代碼示例
- JavaScript Object.isExtensible()用法及代碼示例
- JavaScript Object.getPrototypeOf()用法及代碼示例
- JavaScript Object.isFrozen()用法及代碼示例
- JavaScript Object.seal()用法及代碼示例
- JavaScript Object.getOwnPropertyDescriptors()用法及代碼示例
- JavaScript Object.setPrototypeOf()用法及代碼示例
- JavaScript Object.getOwnPropertySymbols()用法及代碼示例
- JavaScript Object.defineProperties()用法及代碼示例
- JavaScript Object.freeze()用法及代碼示例
- JavaScript Object.preventExtensions()用法及代碼示例
- JavaScript Object.is()用法及代碼示例
- JavaScript Object.fromEntries()用法及代碼示例
- JavaScript Object.getOwnPropertyDescriptor()用法及代碼示例
- JavaScript Object.getOwnPropertyNames()用法及代碼示例
- JavaScript Object.propertyIsEnumerable()用法及代碼示例
- JavaScript Object.defineProperty()用法及代碼示例
- JavaScript Object.keys()用法及代碼示例
- JavaScript Object.values()用法及代碼示例
注:本文由純淨天空篩選整理自 Javascript Object.create()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。