javascript中call()、apply()的区别


Posted in Javascript onMarch 21, 2019

call()、apply()的区别:

相同点:

1.call()和apply()都可以用来间接调用函数,都可以显式调用所需的this。即,任何函数可以作为任何对象的方法来调用。

2.两个方法都可以指定调用实参。

 区别:

call()和apply()的基本区别:在于将参数传递给函数。

call():使用其自有的实参列表作为函数的参数;

apply():要求以数组的形式传入参数。

function track(o,m){
    var original =o[m];
    o[m] =function( ){
      console.log(new Date(),m);
      var results =original.apply(this,arguments);
      console.log(new Date(),m);
      return results;
    }
  }

它们的用法可以通过给定的例子进行说明:

<script>
var someObject = {
  myProperty:'Foo',
  myMethod:function (prefix,posfix) {
    console.log(prefix + this.myProperty + posfix);
  }
};
someObject.myMethod('<','>');//Foo

var someOtherObject = {
  myProperty:'Bar'
};
someObject.myMethod.call(someOtherObject,'<','>');//Bar
someObject.myMethod.apply(someOtherObject,['<','>']);//Bar
</script>

以上所述是小编给大家介绍的javascript中call()、apply()的区别详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 通用loading动画效果实例代码
Jan 14 Javascript
JQuery中DOM事件合成用法实例分析
Jun 13 Javascript
javascript数据类型验证方法
Dec 31 Javascript
jsp 网站引入外部css或者js失效问题解决
Oct 31 Javascript
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
Feb 23 Javascript
Vue实现动态响应数据变化
Apr 28 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
Jul 21 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
Sep 20 jQuery
vue使用element-ui的el-input监听不了回车事件的解决方法
Jan 12 Javascript
解决vue axios的封装 请求状态的错误提示问题
Sep 25 Javascript
js限制输入框只能输入数字(onkeyup触发)
Sep 28 Javascript
Javascript 实现 Excel 导入生成图表功能
Oct 22 Javascript
vue实现微信获取用户信息的方法
Mar 21 #Javascript
vue里如何主动销毁keep-alive缓存的组件
Mar 21 #Javascript
基于node简单实现RSA加解密的方法步骤
Mar 21 #Javascript
详解React项目如何修改打包地址(编译输出文件地址)
Mar 21 #Javascript
js实现unicode码字符串与utf8字节数据互转详解
Mar 21 #Javascript
详解JS取出两个数组中的不同或相同元素
Mar 20 #Javascript
详解vue中axios的使用与封装
Mar 20 #Javascript
You might like
php上传文件,创建递归目录的实例代码
2013/10/18 PHP
PHP上传图片类显示缩略图功能
2016/06/30 PHP
PHP接口继承及接口多继承原理与实现方法详解
2017/10/18 PHP
学习YUI.Ext 第七天--关于View&amp;JSONView
2007/03/10 Javascript
无语,javascript居然支持中文(unicode)编程!
2007/04/12 Javascript
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)
2013/04/11 Javascript
jQuery判断checkbox是否选中的3种方法
2014/08/12 Javascript
jQuery及JS实现循环中暂停的方法
2015/02/02 Javascript
javascript实现仿IE顶部的可关闭警告条
2015/05/05 Javascript
JavaScript中eval()函数用法详解
2015/12/14 Javascript
用原生JS对AJAX做简单封装的实例代码
2016/07/13 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
Js实现京东无延迟菜单效果实例(demo)
2017/06/02 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
2017/07/03 Javascript
Node.js学习之TCP/IP数据通讯(实例讲解)
2017/10/11 Javascript
解决vue bus.$emit触发第一次$on监听不到问题
2020/07/28 Javascript
python使用win32com在百度空间插入html元素示例
2014/02/20 Python
从零学Python之入门(二)基本数据类型
2014/05/25 Python
python实现数值积分的Simpson方法实例分析
2015/06/05 Python
Python线性回归实战分析
2018/02/01 Python
centos 安装Python3 及对应的pip教程详解
2019/06/28 Python
python对象销毁实例(垃圾回收)
2020/01/16 Python
Anaconda+Pycharm环境下的PyTorch配置方法
2020/03/13 Python
python如何编写类似nmap的扫描工具
2020/11/06 Python
澳大利亚网上玩具商店:Mr Toys Toyworld
2018/03/25 全球购物
医学生自我鉴定范文
2013/11/08 职场文书
临床医学系毕业生推荐信
2013/11/09 职场文书
大学旷课检讨书
2014/01/28 职场文书
办公室秘书岗位职责范本
2014/02/11 职场文书
献爱心倡议书
2014/04/14 职场文书
信用社竞聘演讲稿
2014/05/16 职场文书
如何写辞职书
2015/02/26 职场文书
办公经费申请报告
2015/05/15 职场文书
2015年行政人事工作总结
2015/05/21 职场文书
如何使用flask将模型部署为服务
2021/05/13 Python
Python中的程序流程控制语句
2022/02/24 Python