【JavaScript】apply&call
来源:互联网 发布:洁厕剂的知乎 编辑:程序博客网 时间:2024/06/04 01:00
函数调用
- 一、调用外部函数
- 在对象需要调用外部方法时,我们可以这样处理:
window.color='windowRed';function sayColor(){ //动态执行,第一次this指向window、第二次this指向box alert(this.color); }var box={ color:'boxblue'};box.sayColor=sayColor; //通过赋值语句将window.sayColor方法复制到box里面,使box具有window的sayColor方法box.sayColor(); //这里执行box通过赋值从window对象借来的sayColor方法,this指向box对象 */
通过第10行代码,box.sayColor获得window.sayColor的方法;同时this指针由window指向box,从而输出box的color属性值。
- 二、apply和call
- 1、相同点
- 1)两者都是非继承而来的方法;
- 2)两者都是通过接收参数实现函数的调用
- 2、不同点
- 1)apply传递的是参数的集合
- 2)call传递的是一个个单独的参数
- 3、参考
- 1)再不需要传递参数时,推荐使用call调用函数,效率会更高一点。
- 2)通过call或者apply可以将类和方法的低耦合,从而提高代码的维护效率
var color='red';var box={ color:'blue'};function sayColor(){ alert(this.color); //提供被调用的函数体,本属于window}sayColor.call(this); //windowsayColor.call(box); //box
上述代码中,通过call,box对象直接获取到window.sayColor,这样通过代码的重用,可降低开发工作量和运维工作量。
感谢您的宝贵时间,祝生活愉快,谢谢~~
——书生
阅读全文
0 0
- javascript call apply
- javascript apply vs call
- javascript call() apply()
- JavaScript的call、apply
- Javascript call and apply
- javascript call()和apply()
- JavaScript call and apply
- JavaScript:prototype&apply&call
- JavaScript中的call、apply
- javascript apply call详解
- javascript call和apply
- javascript apply/call解读
- javascript 之 call & apply
- javascript call()和apply()
- Javascript apply, call this
- 【JavaScript】call, apply, bind
- JavaScript call()和apply()
- javascript原型+call/apply
- windows解压版mysql的配置和使用
- bootstrap-table 复选框的操作,如提前选中,是否可选等
- 《COM技术内幕》第1-6章笔记
- Freemarker的使用
- mysql插入记录字符中包含中文报错的问题解决方法
- 【JavaScript】apply&call
- JDK8 Lambda表达式教程
- 关于请求转发之后出现中文乱码的情况之一
- 基本算法——快速排序
- 【算法题】实现循环队列
- 造数据时的快速生成方法
- 考研逻辑整理
- windows主机wifi的条件下,linux虚拟机如何进行网络设置
- 分布式相关论文