无参数:
function no_params_test(callback) {
if (typeof callback === "function"){
callback(); //调用传入的回调函数
}
}
有参数:
function params_test(params, callback) {
if (typeof callback === "function"){
callback(params);
}
}
function back(){
alert('回调函数测试');
}
function cback(params){
console.log(params);
}
function test() {
no_params_test(back); //想要传入的函数名能加()就当行数执行,则传入时不加引号
var params = [];
params.push({
title: 'test',
id: 1
});
params_test(params, cback);
}
若传入的回调函数是带引号的 no_params_test('back'),则typeof callback 则为string,则不能当函数调用,可以使用以下方式调用:
eval(callback + '()');或者直接传入no_params_test('back()')则eval(callback);