js原生方法被覆盖,从新赋值原生的方法


Posted in Javascript onJanuary 02, 2018

实现原理

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原生方法被覆盖,从新赋值原生的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
前台js改变Session的值(用ajax实现)
Dec 28 Javascript
动态加载js、css等文件跨iframe实现
Feb 24 Javascript
js取整数、取余数的方法
May 11 Javascript
javascript 动态创建表格的2种方法总结
Mar 04 Javascript
Node.js刷新session过期时间的实现方法推荐
May 18 Javascript
jQuery.Callbacks()回调函数队列用法详解
Jun 14 Javascript
jquery实现点击页面回到顶部
Nov 23 Javascript
JavaScript实现水平进度条拖拽效果
Jan 18 Javascript
p5.js入门教程之小球动画示例代码
Mar 15 Javascript
Node.js 使用AngularJS的方法示例
May 11 Javascript
Vue不能观察到数组length的变化
Jun 08 Javascript
微信小程序的线程架构【推荐】
May 14 Javascript
JS实现验证码倒计时的注册页面
Jan 02 #Javascript
使用socket.io实现简单聊天室案例
Jan 02 #Javascript
使用socket.io制做简易WEB聊天室
Jan 02 #Javascript
AngularJS实现的简单拖拽功能示例
Jan 02 #Javascript
AngularJS实现的锚点楼层跳转功能示例
Jan 02 #Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
Jan 02 #jQuery
Node实战之不同环境下配置文件使用教程
Jan 02 #Javascript
You might like
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
JS类定义原型方法的两种实现的区别评论很多
2007/09/12 Javascript
jQuery select控制插件
2009/08/17 Javascript
IE和firefox浏览器的event事件兼容性汇总
2009/12/06 Javascript
js的表单操作 简单计算器
2011/12/29 Javascript
使用JS CSS去除IE链接虚线框的三种方法
2013/11/14 Javascript
JS嵌套函数调用上下文的问题解决
2014/03/26 Javascript
jQuery中extend函数详解
2015/07/13 Javascript
noty ? jQuery通知插件全面解析
2016/05/18 Javascript
微信jssdk用法汇总
2016/07/16 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
详解AngularJS验证、过滤器、指令
2017/01/04 Javascript
javascript基础练习之翻转字符串与回文
2017/02/20 Javascript
js数组实现权重概率分配
2017/09/12 Javascript
vue实现跨域的方法分析
2019/05/21 Javascript
微信小程序实现拍照画布指定区域生成图片
2019/07/18 Javascript
JavaScript实现背景自动切换小案例
2019/09/27 Javascript
新手入门js闭包学习过程解析
2019/10/08 Javascript
Vue前端项目部署IIS的实现
2020/01/06 Javascript
《javascript设计模式》学习笔记一:Javascript面向对象程序设计对象成员的定义分析
2020/04/07 Javascript
[13:55]Newbee vs Team Spirit
2018/06/07 DOTA
Python的批量远程管理和部署工具Fabric用法实例
2015/01/23 Python
Python实现在线程里运行scrapy的方法
2015/04/07 Python
Python selenium文件上传方法汇总
2020/11/19 Python
用python统计代码行的示例(包括空行和注释)
2018/07/24 Python
使用python绘制二元函数图像的实例
2019/02/12 Python
pyautogui自动化控制鼠标和键盘操作的步骤
2020/04/01 Python
Python 创建TCP服务器的方法
2020/07/28 Python
基于Html5实现的语音搜索功能
2019/05/13 HTML / CSS
米兰必去买手店排行榜首位:Antonioli
2016/09/11 全球购物
彼得罗夫美国官网:Peter Thomas Roth美国(青瓜面膜)
2017/11/05 全球购物
Notino罗马尼亚网站:购买香水和化妆品
2019/07/20 全球购物
公益广告宣传方案
2014/02/28 职场文书
学雷锋志愿服务月活动总结
2014/03/09 职场文书
大学生标准自荐书
2014/06/15 职场文书
python 如何获取页面所有a标签下href的值
2021/05/06 Python