导航:首页 > 方法技巧 > call方法如何理解

call方法如何理解

发布时间:2022-11-01 02:49:46

⑴ call和apply方法的区别

call方法:语法:call(thisObj,Object)定义:调用一个对象的一个方法,以另一个对象替换当前对象。说明:call方法可以用来代替另一个对象调用一个方法。call方法可将一个函数的对象上下文从初始的上下文改变为由thisObj指定的新对象。

⑵ call 和 apply 的区别

JavaScript中的每一个function对象都会有call和apply方法
定义:
apply:调用一个对象的一个方法,用另一个对象替换当前对象。例如:B.apply(A, arguments);即A对象应用B对象的方法。

call:调用一个对象的一个方法,用另一个对象替换当前对象。例如:B.call(A, args1,args2);即A对象调用B对象的方法

从定义中可以看出,call和apply都是调用一个对象的一个方法,用另一个对象替换当前对象。而不同之处在于传递的参数,apply最多只能有两个参数——新this对象和一个数组argArray,如果arg不是数组则会报错TypeError;
call则可以传递多个参数,第一个参数和apply一样,是用来替换的对象,后边是参数列表。

⑶ 前端为什么用call方法

因为是公用的方法。
js中call是调用一个对象的一个方法,以另一个对象替换当前对象。call方法是Function类原型上的一个公共方法,所以要用这个。

⑷ Javascript中call和apply的区别与详解

call和apply的详解

  1. call()方法

    用于操作this的函数方法是call(),它可以指定的this值和参数来执行函数。call()的第一个参数指定了函数执行时this的值,其后的所有参数都是需要被传入函数的参数。

  2. apply()方法

    apply()是你可以用来操作this的第二个函数方法。apply()的工作方式和call()完全一样,但它只能接受两个参数: this 的值和一个数组或者类似数组的对象,内含需要被传入函数的参数(也就是说你可以把arguments对象作为apply()的第二个参数)。你不需要像使用call()那样一个个指定参数,而是可以轻松传递整个数组给apply()。除此之外,call()和apply()表现得完全一样。

  3. bind()方法

    改变this的第三个函数方法是bind()。ECMAScript 5中新加的这个方法和之前那两个颇有不同。按惯例,bind()的第一个参数是要传给新函数的this的值。其他所有参数代表需要被永久设置在新函数中的命名参数。你可以在之后继续设置任何非永久参数。

call和apply的区别

资料来源:

HTML5学堂

决胜前端

⑸ CALL在编程里如何解释

是汇编语言吧!
call指令是调用子程序,后面紧跟的应该是子程序名或者过程名。
如:call di 和 call dword ptr [di]
call di是说所调用的子程序的入口偏移地址=di的值,段地址CS不变(段内调用);
call dword ptr [di]是说所调用的子程序的入口的“偏移地址”存放在内存单元DS:{di]中,而其“段地址”则存在DS:[di+2]中,这是段间调用。

⑹ call和apply的区别 阮一峰

call方法:
语法:call(thisObj,Object)
定义:调用一个对象的一个方法,以另一个对象替换当前对象。
说明:
call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。
如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。

apply方法:
语法:apply(thisObj,[argArray])
定义:应用某一对象的一个方法,用另一个对象替换当前对象。
说明:
如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。
如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。

⑺ 关于javascript中apply和call方法的区别

apply: 以指定的this值和参数(参数以数组形式传入)调用某个函数
call: 以指定的this值和若干个指定的参数值调用某个函数或方法
call方法的作用和apply方法类似,只有一个区别,就是call接受的是若干个参数的列表,而apply接受的是一个包含多个参数的数组。
详细说明、示例参考下面的链接:
apply:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function/apply
call :
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function/call

⑻ 在JS中,call()方法和apply()方法到底该怎么应用

1.apply与call是更改对象的内部指针,即改变对象的this指向的内容;

2.call与apply的第一个参数都是要传入给当前对象的对象,及函数内部的this,后面的参数都是传递给当前对象的参数。

⑼ 前端为什么用call方法

因为CALL指令用于调用其他函数。
可以调用函数,可通过call()方法来调用demo.call()可以直接输出内容。all的功能就是调用子程序。call指令是计算机转移到调用的子程序。
call()方法内的第一个参数代表this指向的函数,后面紧跟的参数为函数原有的形参demo.call(demo1,10,20)。

⑽ 对于javascript 中的call函数的理解问题

标准解释:call方法是将一个对象的方法在另一个对象的上下文环境中执行。

详细解释:你的例子中,myFun.call(myObject, 13, 3, 95)执行时是这样的:
1. 调用myFun函数
2. 将13,3,95三个参数传递给它(你的myFun方法中没有处理这些参数的代码,所以传了也没有用)
3. 将myFun函数中的所有this用myObject代替(同样,你的myFun函数中没有使用this,所以执行结果和直接调用myFun()是一样的)

修改一下你的例子,帮助你理解:
function myFun(p1, p2, p3)
{
this.para1 = p1;
this.para2 = p2;
this.para3 = p3;
}

var myObject = new Object();

alert(myObject.para1) //显示undefined

myFun.call(myObject,13,3,95); /*执行的时候,myFun方法中的this全部用myObject对象代替,所以在这个例子中,执行myFun方法和直接写下面的语句效果是一样的:
myObject.para1 = 13;
myObject.para2 = 3;
myObject.para3 = 95;
*/

alert(myObject.para1) //显示13

阅读全文

与call方法如何理解相关的资料

热点内容
中式棉袄制作方法图片 浏览:62
五菱p1171故障码解决方法 浏览:857
男士修护膏使用方法 浏览:545
电脑图标修改方法 浏览:606
湿气怎么用科学的方法解释 浏览:536
910除以26的简便计算方法 浏览:804
吹东契奇最简单的方法 浏览:703
对肾脏有好处的食用方法 浏览:97
电脑四线程内存设置方法 浏览:511
数字电路通常用哪三种方法分析 浏览:12
实训课程的教学方法是什么 浏览:524
苯甲醇乙醚鉴别方法 浏览:81
苹果手机微信视频声音小解决方法 浏览:699
控制箱的连接方法 浏览:74
用什么简单的方法可以去痘 浏览:788
快速去除甲醛的小方法你知道几个 浏览:802
自行车架尺寸测量方法 浏览:123
石磨子的制作方法视频 浏览:151
行善修心的正确方法 浏览:402
薯仔炖鸡汤的正确方法和步骤 浏览:275