如何在JavaScript中将外部函数设置为函数的参数?

如何在JavaScript中将外部函数设置为函数的参数?,javascript,Javascript,var元素; 函数getElementelem,函数调用{ 如果元素长度===未定义{ elem=[elem] }; 元素=元素; 对于变量i=0;i

var元素; 函数getElementelem,函数调用{ 如果元素长度===未定义{ elem=[elem] }; 元素=元素; 对于变量i=0;i
function w(i) {
    a[i].style.color = "red"
}
按如下方式传递函数:

x(document.querySelectorAll("p"), w);
要调用函数w,您需要执行该函数,因为您可以看到该函数现在接收一个索引,以便能够获取特定元素p:

var a; 函数xy,z{ 如果y.length==未定义{ y=[y] }; a=y; 对于变量i=0;i
世界

以这种方式调用闭包:

function myFunc(a){
  a();
}
请记住,对于闭包,您不需要定义名称。 您可以定义一个闭包并像这样传递它

f = function(){
  console.log('closure');
}
myFunc(f)

为什么不在for循环中调用z?那些毫无意义的单字符变量名使得代码很难阅读。难道你不能只做document.querySelectorAll'p.forEachel=>el.style.color='red';?这只是一个例子,我需要这些函数供以后使用。对于更深入的示例,我编写了这些函数,然后选择所有div,并将div的位置设置为relative。然后,选择段落,将其设置为白色。
f = function(){
  console.log('closure');
}
myFunc(f)