我創建了像原型的數組:原型失去了對片上陣列狀的結構
function METracker() {}
METracker.prototype = Object.create(Array.prototype);
METracker.prototype.myMethod = function(aStd) {
return true;
};
現在我創建一個實例:
var aInst = new METracker('a', 'b', 'c');
現在,我要克隆它,所以我做的:
var cloneInst = aInst.slice();
然而cloneInst
不再在方法.myMethod
有沒有辦法來保持原鍵入克隆?
感謝
這是因爲'slice'返回'Array'對象,而不是'METracker'對象,'Array'對象沒有'myMethod'。 – thefourtheye
謝謝,我試圖讓分片返回'METracker'這可能嗎? – Noitidart
不幸的是,除非你可以自己改變'slice'函數。否則,你需要在'METracker'上構建你自己的'slice'包裝器,它將切片並返回一個'METracker'實例。 – thefourtheye