gpt4 book ai didi

javascript - 函数作为参数

转载 作者:行者123 更新时间:2023-12-03 09:27:14 25 4
gpt4 key购买 nike

我只是想知道;

为什么这有效;

    test = function(message) {
console.log('xxx');
}

setTimeout(test, 3000);

但不是这个;

    test = function(message) {
console.log(message);
}

setTimeout(test('xxx'), 3000);

我知道应该这样写;但上面的版本会方便得多......

    test = function(message) {
console.log(message);
}

setTimeout(function() { test('xxx'); }, 3000);

最佳答案

您将 test 的返回结果分配给 setTimeout 的回调参数,而不是传递函数引用。

function callback(callback) {
callback();
}
function say(message) {
console.log(message);
// this function doesn't return anything
}
// callback(say('Hello World!')) === callback() because say(message) doesnt return anything.

关于javascript - 函数作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31632683/

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