實現原理
js的原生方法被覆蓋掉以后,如果你還沒讓原生方法又從新指向一個新的變量名,那就gg了。所以,關鍵就是怎么再獲取到原生的方法。實現的原理呢就是創建一個新的window對象,然后從新的window對象里面獲取原生的方法,來重新賦值。
使用iframe實現
首先創建一個iframe對象,使用document.createElement方法創建
var iframe = document.createElement("iframe");document.body.appendChild(iframe)然后,獲取到iframe里面的window對象
var iframeWin = iframe.contentWindow;
最后賦值一下,即可
window.console = iframeWin.console;
使用window.open方法實現
window.open方法調用會打開一個新的窗口,返回一個新的window對象,所以我們獲取window對象可以這樣獲取
var win = window.open(); //獲取對象win.close(); //將打開的窗口關閉window.console = win.console;
以上這篇js原生方法被覆蓋,從新賦值原生的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答