要自定義JavaScript數組的行為,您可以重寫原型上的方法或使用ES6的類
例如,我們想要自定義數組的 push
方法,以便在添加元素時自動將新元素添加到數組的開頭。我們可以這樣做:
Array.prototype.customPush = function (element) {
this.unshift(element);
};
const myArray = [1, 2, 3];
myArray.customPush(0); // 結果為:[0, 1, 2, 3]
請注意,修改原生對象的原型可能會導致代碼與其他庫發生沖突,因此請謹慎操作。
ES6引入了類,允許我們創建自定義數組并覆蓋其方法。例如,我們可以創建一個名為 CustomArray
的類,并重寫 push
方法:
class CustomArray extends Array {
push(element) {
this.unshift(element);
}
}
const myArray = new CustomArray(1, 2, 3);
myArray.push(0); // 結果為:[0, 1, 2, 3]
使用類可以更好地封裝代碼,避免修改原生對象原型。此外,類還支持繼承,可以方便地擴展其他數組的功能。