gpt4 book ai didi

javascript - jQuery的each方法中的 "callback.call( value, i, value )"是什么意思?

转载 作者:行者123 更新时间:2023-12-03 21:33:28 25 4
gpt4 key购买 nike

jQuery中的

each()方法包含这样一条语句:

callback.call( value, i, value ) 

我无法理解这句话的确切含义。

我知道 callbackcall 的含义,但我无法获取函数调用的参数:(value,i,value)。这是什么意思?

该语句用于 each() 的 for block 中,但我的问题与该上下文无关。

来自 jQuery 源:

for ( var value = object[0];
i < length &&
callback.call( value, i, value ) // <=== LOOK!
!== false;
value = object[++i] ) {}

最佳答案

Javascript 中的所有函数都存在 call 方法。它允许您调用该函数,并在此过程中设置该函数中 this 的值。

function myFunc() {
console.log(this);
}

myFunc.call(document.body);

在此示例中,myFunc 中的 this 将是 document.body

call的第一个参数是要设置为this的值;后续参数作为普通参数传递给函数。因此,在您的示例中:

callback.call( value, i, value )

这相当于

callback(i, value)

除此之外,在回调中,this 现在也设置为 value

关于javascript - jQuery的each方法中的 "callback.call( value, i, value )"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4065353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com