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 相关文章推荐
在JavaScript中使用inline函数的问题
Mar 08 Javascript
JS event使用方法详解
Apr 28 Javascript
jquery ui dialog里调用datepicker的问题
Aug 06 Javascript
javascript 类定义的4种方法
Sep 12 Javascript
网页禁用右键实现代码(JavaScript代码)
Oct 29 Javascript
javascript使用eval或者new Function进行语法检查
Oct 16 Javascript
原生js更改css样式的两种方式
Mar 15 Javascript
Node.js使用Express创建Web项目详细教程
Mar 31 Javascript
使用原生js+canvas实现模拟心电图的实例
Sep 20 Javascript
jquery中有哪些api jQuery主要API
Nov 20 jQuery
vue结合Echarts实现点击高亮效果的示例
Mar 17 Javascript
JavaScript实现的DOM绘制柱状图效果示例
Aug 08 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
[EPIC] Larva vs Flash ZvT @ Crossing Field [2017-10-09]
2020/03/17 星际争霸
ThinkPHP入口文件设置及相关注意事项分析
2014/12/05 PHP
yii2.0实现验证用户名与邮箱功能
2015/12/22 PHP
如何判断php mysqli扩展类是否开启
2016/12/24 PHP
PHP实现的XML操作类【XML Library】
2016/12/29 PHP
关于php几种字符串连接的效率比较(详解)
2017/02/22 PHP
使用PHP反射机制来构造"CREATE TABLE"的sql语句
2019/03/21 PHP
Javascript 作用域使用说明
2009/08/13 Javascript
JavaScript Perfection kill 测试及答案
2010/03/23 Javascript
Javascript事件热键兼容ie|firefox
2010/12/30 Javascript
jQuery实现的一个自定义Placeholder属性插件
2014/08/11 Javascript
谈谈encodeURI和encodeURIComponent以及escape的区别与应用
2015/11/24 Javascript
JavaScript基础知识之方法汇总结
2016/01/24 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
node.js实现微信JS-API封装接口的示例代码
2017/09/06 Javascript
vue的安装及element组件的安装方法
2018/03/09 Javascript
vue 限制input只能输入正数的操作
2020/08/05 Javascript
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
Python中的id()函数指的什么
2017/10/17 Python
django限制匿名用户访问及重定向的方法实例
2018/02/07 Python
python列表生成式与列表生成器的使用
2018/02/23 Python
python实现移位加密和解密
2019/03/22 Python
Python解析json时提示“string indices must be integers”问题解决方法
2019/07/31 Python
Python3视频转字符动画的实例代码
2019/08/29 Python
python处理excel绘制雷达图
2019/10/18 Python
Python3 selenium 实现QQ群接龙自动化功能
2020/04/17 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
html5文本内容_动力节点Java学院整理
2017/07/11 HTML / CSS
工程管理造价应届生求职信
2013/11/13 职场文书
《再别康桥》教学反思
2014/02/12 职场文书
财务主管岗位职责
2014/02/28 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
文秘专业应届生求职信
2014/05/26 职场文书
2014年店长工作总结
2014/11/17 职场文书
个人原因辞职信模板
2015/05/13 职场文书