js 写自定义回调函数callback

第一种形式:

/*
* 构造回调函数
* @param:p1
* @param:callback  回调函数
*/
function testfn(p1 ,callback) {
	console.log('调用第一次函数-->'+p1);
	if(callback){
		callback(p1);
	}
}
//回调函数
function testcallback(p){
	console.log('回调函数test1-->'+p);
}
//调用
testfn('我是参数',testcallback); //调用第一次函数-->我是参数     回调函数test1-->我是参数

第二种形式:

/*
* 构造回调函数
* @param:p1
* @param:p2
* @param:callback  回调函数
*/
function add_callback(p1, p2 ,callback) {
    var my_number = p1 + p2;
	console.log('调用函数--> '+p1+'+'+p2+'='+my_number);
	if(callback){
		callback(my_number);
	}
}

//调用:
add_callback(5, 15, function(num){
    console.log("回调函数--> " + num);
});//调用函数--> 5+15=20  回调函数--> 20

第三种形式:

/*
* 构造回调函数
* @param: json  json格式
*/
function jsonCallback(json){
	if(json){
		if(json.name){
			console.log("回调函数--> "+json.name);
			if(json.callback){
				json.callback(json.name);
			}
		}
	}
}
//调用:
jsonCallback({
	name:'stonefly',
	callback:function(name){
		console.log('my name is '+name);
		document.write('my name is '+name);
	}
})//调用函数--> stonefly     my name is stonefly

猜你喜欢

转载自blog.csdn.net/stone10086/article/details/84194222