gpt4 book ai didi

javascript - 在不调用函数的情况下分配具有自定义参数的函数

转载 作者:行者123 更新时间:2023-11-30 12:35:16 26 4
gpt4 key购买 nike

我有一个函数 A,它在运行时接受另一个函数 B 作为参数并调用它。问题是函数 B 需要一些参数,但我不知道如何将带有参数的函数 B 传递给函数 A。

例子:

function callerFunction(c)
{
alert("The caller is calling the function!");
c(c.arguments);
};
var a = "hello";

function thisOne(d)
{
d = "I changed my way";
alert(d);
};
callerFunction( /* I NEED TO PASS THE 'thisOne' with the parameter/variable 'a' here, and then call it inside 'callerFunction' */);

最佳答案

只需传递一个闭包:

callerFunction(function() { thisOne(a); });

并将其称为c(),而不是c(c.arguments)

请注意,此匿名函数将引用 a 变量,而不是当时 a 的值。因此,如果 callerFunction() 用于存储此函数对象并稍后调用它,如果您在传递匿名函数和调用它之间更改了 a 中的值,则从匿名函数的 Angular 来看,a 的值会发生变化:

var a = 1;

var fn = function() { console.log(a); };

fn(); // Logs 1

a = 2;
fn(); // Logs 2

关于javascript - 在不调用函数的情况下分配具有自定义参数的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26265707/

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