JS中的call()方法的理解
2016-04-21 15:21
344 查看
fn.call(obj,arg1,arg2);
这是call()方法的使用形式,apply()是差不多的。作用是用obj对象来替换fn中的this
举个栗子:
这是call()方法的使用形式,apply()是差不多的。作用是用obj对象来替换fn中的this
举个栗子:
function A(){ this.color="blue"; } function B(){ this.color="yellow"; } var a=new A(); B.call(a); //用a对象来替换B()函数中的this;函数在调用call()或apply()的时候会执行函数 alert(a.color); //这里将输出yellow // 因此,上面的代码就可以改写成: function A(){ this.color="blue"; } function B(){ a.color="yellow"; //上面的B.call(a)的结果就变成了这样 } var a=new A(); B(); //调用了一次B(),从而修改了a.color的值 alert(a.color); //所以输出yellow
相关文章推荐
- javascript继承实现
- JSP和Servlet那点事
- js操作cookie
- 图片实时预览JSP加js
- JS中对this的理解
- js中要声明变量吗?
- Json和String的转换
- JavaScript的瀑布流效果的详解及实现
- JS基础知识第一弹
- JavaScript入门
- javascript之typeof、constructor、instanceof
- JS四舍五入方法
- 7个JS基础知识总结
- JS全选反选
- 图片加载完毕后执行JS代码
- javascript基础四 (事件应用鼠标滚轮)
- js中获取一个对象里面的方法和属性的javascript
- 常见算法是js实现汇总
- 基于C++和JavaScript的全平台全栈式游戏开发解决方案的思考
- Validation JSR-303原生支持的限制