先說明一下為什麼要寫這個,因為最近在面試,面試的時候面試官問了這個問題,當時是真的沒有答上來,回來之後自己考慮了一下,現在給大家分享重寫js push函式,使其能夠在push的同時列印出push的元素
有的同學有可能想要用array.array.prototype.push = function(){}
來重寫,但是這樣子的話push原本的函式內容就會丟失,你得重寫push的邏輯,這樣就很麻煩。於是我們想到得先把原本的push函式備份一下,然後重寫的時候呼叫就可以了。
let _push = array.prototype.push
array.prototype.push = function()
console.log('引數為', arguments);
}let a = [1,2,3]
a.push(4,5,6)
這個時候控制台已經列印出了我們想要的結果
mdn web文件
js函式面試題
一var name the window var object alert object.getnamefunc 題中有兩個alert輸出,我們首先看第乙個alert,這個alert所在的函式是在最後乙個alert裡面被呼叫的,呼叫的時候,裡面的this指向的是object,所以是在object裡面...
常見面試題 重寫strcpy 函式原型
已知strcpy函式的原型是 char strcpy char strdest,const char strsrc 1.不呼叫庫函式,實現strcpy函式 2.解釋為什麼要返回char 1.strcpy的實現 char strcpy char strdest,const char strsrc 1 ...
函式面試題
面試題的理解文件 第一題 var num function fun num 18 fun 理解 結果是undefined,但是num的值為18,函式裡面的num的值為20,這串 是由上到下的循序執行的,而這裡的num如果在函式裡面則會去找自己裡面的,如果有則會使用自己裡面的num,如果沒有則會去父級...