晚回家 发表于 2020-4-25 20:58:16

一个关于js回调函数传参的问题

本帖最后由 晚回家 于 2020-4-25 21:01 编辑

function tryMe (param1, param2) {
    alert (param1 + " and " + param2);
}

// 外函数
function callbackTester (callback) {
    callback();
}

// 测试函数
callbackTester (function() {
    tryMe("hello", "goodbye");
});


①请问直接给回调函数传递参数,和用匿名函数封装回调函数再传实参,有什么区别吗?(从应用层面和代码层面)
②直接使用函数名调用回调函数,js是否会自动给回调函数传一个实参(具体是什么我倒不清楚,好像是个对象)?

{:10_254:} 两个问题可能会有交叉,谢谢大佬

wp231957 发表于 2020-4-26 13:16:23

我基本功不行,所以理论问题 无法回答你
但是你碰到具体问题,可以探讨一下
我给你一些匿名函数的例子,你可以看一下:
//方法一
const s1=(()=> {
    console.log("这是一个匿名函数的示例");
});
s1();

//方法二
const s2=(()=> {
    console.log("这是一个匿名函数的示例");
})();

//方法三
(function(){
   console.log("这是一个匿名函数的示例");
})();

//方法四
const s4=(function(){
    console.log("这是一个匿名函数的示例");
});
s4();

//传参方法一
const ss1=((a,b)=>a+b);
console.log(ss1(10,20));

//传参方法二
let ss2=((a,b)=>a+b)(10,20);
console.log(ss2);

//传参方法三
let ss3=(function(a,b){
   return a+b;
})(10,20);
console.log(ss3);
//传参方法四
let ss4=(function(a,b){
    return a+b;
});
console.log(ss4(10,20));
页: [1]
查看完整版本: 一个关于js回调函数传参的问题