[英]Create an empty object with a specific prototype
我正在將經典的OOP項目轉換為JS。 一切進展順利,我只需要知道我使用的一種方法是否具有速記/常規方式即可達到與我相同的效果。
在我的設計中,我需要創建一個具有特定原型的空對象。 我使用一個空的虛擬函數作為constructor
函數,因為我需要一個空的對象。 我不能使用new Object()
因為我需要在創建之前附加一個原型。
這是我的代碼:
var baseObj = {name: '', id: 0}
function emptyObj () {
//this is really a dummy
}
emptyObj.prototype = Object.create(baseObj);
myUser = new emptyObj();
請注意, 我必須遵循這種模式,並且我的項目可以很好地運行。 我只想知道是否存在一種速記/常規方法來創建帶有原型的空對象。
請堅持使用ES5。
我只想知道是否有一種速記/常規方法來創建帶有原型的空對象
是的,有一個可以做到這一點。 並且您已經使用過它。 它稱為Object.create
。
您的代碼完全等同於
var baseObj = {name: '', id: 0};
myUser = Object.create(Object.create(baseObj));
我不確定您是否真的打算進行兩級繼承,還是單次調用就足夠了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.