call和apply方法在jQuery中有什么区别?
这个问题在这里已经有了答案:
他们不是jQuery的东西,而是JavaScript的东西。
他们做同样的事情:他们使用的特定值调用给定函数this
函数调用中。 唯一的区别是你如何指定传递给函数的参数。 有了call
,您可以指定他们为一系列的离散参数(后第一位的,这是因为使用什么this
)。 随着apply
,您可以指定它们作为一个数组(在第一个参数后再次,这是用什么this
)。
所以说,我们有:
function foo(a, b, c) {
console.log("this = " + this);
console.log("a = " + a);
console.log("b = " + b);
console.log("a = " + c);
}
这两个调用完全一样:
foo.call("bar", 1, 2, 3);
// Note --------^--^--^--- a series of discrete args
foo.apply("bar", [1, 2, 3]);
// Note ---------^-------^-- args as an array
在这两种情况下,我们都看到:
this = bar a = 1 b = 2 c = 3链接地址: http://www.djcxy.com/p/18039.html
上一篇: What is the difference between call and apply method in jQuery
下一篇: please explain the apply and call methods in javascript