call()和apply()的作用都是一样的——通过改变函数体内部 this 的指向,借用对象的方法的目的

还是举个栗子吧:

function Cat(){
this.food = 'fish';
this.say= function(){
console.log('I love ' + this.food)
}
} //小猫构造函数
var keke = new Cat(); //一只小猫,由小猫构造函数创建 var diandian = {food:'bone'}; //又来一只小狗
//小猫和小狗一起去餐厅吃饭
keke.say();    //I love fish
//小狗没有say 方法,但是他也想说自己喜欢的食物,于是

keke.say.call(diandian);  //I love bone借用小猫的方法。两人一起愉快地吃自己喜欢的食物了。

 这两个方法的区别在于参数,call()传递给函数的参数必须列举出来,apply()传递的是参数数组.

最新文章

  1. Android 自定义控件(一)
  2. mysqlbinlog flashback 5.6完全使用手册与原理
  3. 【原创】使用.NET Core 1.0创建一个Self-Contained控制台应用
  4. ajax回调中的this.href不执行跳转的解决办法
  5. pyqt5 笔记(三)py2exe 实现代码打包exe
  6. 谷歌浏览器支持小于12px的字体
  7. DHCPv6 server port and DHCPv6 client port
  8. jdbc 连接mysql Communications link failure的解决办法
  9. hdu 4454 Stealing a Cake (三分)
  10. Entity Framework Code First约定
  11. js bind绑定事件
  12. JAVA自学笔记12
  13. 解决Visual Studio禁止使用strlen函数的问题
  14. flask框架----设置配置文件的几种方式
  15. 深度学习原理与框架-神经网络-线性回归与神经网络的效果对比 1.np.c_[将数据进行合并] 2.np.linspace(将数据拆成n等分) 3.np.meshgrid(将一维数据表示为二维的维度) 4.plt.contourf(画出等高线图,画算法边界)
  16. zkClient的使用
  17. MySql数据库资料收集
  18. EXCEL函数LookUp, VLOOKUP,HLOOKUP应用详解(含中文参数解释)
  19. NHibernate连接oracle报错
  20. 关于wcf配置未启动net.tcp监控导致无法访问wcf

热门文章

  1. FW:stash install
  2. Python开发【笔记】:git&github 快速入门
  3. 一个用于提取简体中文字符串中省,市和区并能够进行映射,检验和简单绘图的python模块
  4. centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课
  5. (转) SpringBoot非官方教程 | 第二十四篇: springboot整合docker
  6. luarocks模块管理工具
  7. 如何用 testNG 生成测试报告
  8. (转)JavaScriptSerializer,DataContractJsonSerializer解析JSON字符串功能小记
  9. Android SurfaceView入门学习
  10. 《C++ Concurrency in Action》