博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript中call与apply的区别
阅读量:6124 次
发布时间:2019-06-21

本文共 597 字,大约阅读时间需要 1 分钟。

hot3.png

作用

在javascript中,call跟apply的作用是相同的,都是改变上下文对象this的指向;

//call方法let obj = {    name: 'Ai5tbb'};function getName(a, b) {    console.log(a + ' ' + this.name + ' ' + b);}getName.call(obj, 'A', 'B'); //Ai5tbb {A}//{A}处的代码把函数getName()的上下文对象this改变成obj的上下文对象,此时代码相当于://function getName() {//	console.log(obj.name);//}//apply方法let obj = {    name: 'Ai5tbb'};function getName(a, b) {    console.log(a + ' ' + this.name + ' ' + b);}getName.apply(obj, ['A', 'B']); //Ai5tbb {A}//{A}处的代码跟上面call方法含义一样

区别

如上面代码所示,两者的作用是一样的,唯一区别就是传参方式不同,call方法传的是参数列表,而apply方法传的是数组;

转载于:https://my.oschina.net/u/3714085/blog/3046933

你可能感兴趣的文章
IOS开发实现录音功能
查看>>
thinkphp更新数据库的时候where('')为字符串
查看>>
python2用pip进行安装时报错Fatal error in launcher: Unable to create process using '"'
查看>>
分布式数据库数据从属与client与server的数据同步
查看>>
K8s快速入门
查看>>
.NET连接SAP系统专题:C#调用BAPI给账户赋予权限(八)
查看>>
24、printf跨平台,数据类型与输出类型要匹配
查看>>
浅谈ASP.NET核心对象【转】
查看>>
HDU 1728 逃离迷宫
查看>>
jQuery设计思想
查看>>
64位Ubuntu提示(...adb": error=2, 没有那个文件或目录)
查看>>
分享一个简单的 VS 插件及源码
查看>>
(转)Windows的任务调度机制
查看>>
CodeSite日志使用
查看>>
PHP实现一个简单url路由功能
查看>>
超棒的仪表盘javascript类库 - justGage
查看>>
堆实例
查看>>
WinForm 单例模式实例
查看>>
怎样理解NoSQL的一致性等
查看>>
android启动优化
查看>>