⑴ js 如何寫回調函數
把函數作為參數傳遞就是了。
回調函數可以繼續擴展一個函數的功能,非常靈活。
比如:
var PersonInfo = {
name:'Sigma',
age:18
};
function getPersonInfo( next ){
var myInfo = PersonInfo;
next && next( myInfo );
}
getPersonInfo(function( data ){
alert( data.name );
});
⑵ JS回調函數
回調函數可以繼續擴展一個函數的功能,可以是程序非常靈活。
比如:
function
showDiv(callback){
$("#div1").show();
callback($("#div1"));
}
showDiv(function($div){
$div.text("hello
world");
});
//原本showDiv的功能就是現實一個div,加了callback函數當參數後就可以在執行完show之後改變div中的文字。
一般來說,callback函數用在非同步中的例子比較多,因為在非同步調用中,只能通過回調函數繼續執行某個動作。
例如:
function
myThread(callback){
return
setTimeout(1000*10,function(){
$("#div").append("<p>hello</p>");//10秒後在div中加一個行,然後在執行callback函數
callback();
});
}
⑶ JavaScript:將函數作為參數傳入,作為回調函數
調用函數時, 傳遞入的參數與順序必須按照函數聲明來排列, 所以調用doSomeThing時:
function doSomething(args,callback){
somethingComplicated(args);
callback();
}
//第一個參數如果不需要傳遞,可設置為null
//function onEnd(){} 這種方法通常是聲明一個函數, 將函數作為參數傳遞可直接傳遞函數名稱,或者傳遞匿名函數
//傳遞函數名稱
function onEnd(){
//code
}
doSomething(null, onEnd);
//傳遞匿名函數
doSomething(null,function(){
compute();
});
⑷ js的回調函數怎麼寫,
in是js保留字,不能用作函數名,否則會語法錯誤,可以改為其他比如in1
此外代碼也要做些修改才行,見下面:
<script>
functionin1(a,b){//不能用in作為函數名,加個數字就保險了
returna()+b();//要加括弧函數才會執行
}
functiono(){
return1;
}
functiont(){
return2;
}
document.write(in1(o,t));//直接輸出即可
</script>
⑸ javascript 中怎麼給回調函數傳值
有個辦法
舉個例子吧
setInterval((function(obj){return function(){callback(obj);};})("abc"),1000);
function callback(obj){
console.log(obj);
}
比如callback是個帶參數的回調函數,現在想每個一秒調用一次,輸出"abc",如果這樣寫
setInterval(callback,1000);就傳不了參數了,上面的寫法可以實現傳參,是不是很神奇。。。
當然如果是setInterval的話用下面的方法就很簡單了
setInterval("callback('abc')",1000);
function callback(obj){
console.log(obj);
}
⑹ js回調函數在json中怎麼寫
(1)如果是jquery封裝的ajax方法,可以配置好參數,設置返回數據的類型為json,這樣回調函數里內面接到的就容是一個json對象,可以直接用data.xxx取出裡面的屬性.(2)如果不是用的框架ajax方法,返回的就是個字元串,可以使用js的eval("("+data+")")方法將字元串轉為json對象.
⑺ js回調函數怎樣傳遞參數
<html>
<head>
<title>
jsp3
</title>
</head>
<body bgcolor="#ffffff">
<script language="javascript" type="text/javascript">
function A(a,callback){
var b=callback;
alert(a+b);
}
function B(c){
return (-c);
}
</script>
<form method="post" action="jsp3.jsp">
<br><br>
<input type="button" name="Submit" value="Submit" onclick="A(4,B(3));">
</form>
</body>
</html>
回調函數就是一個通過函數指針調用的函數。如果你把函數的指針(地址)作為參數傳遞給另一個函數,當這個指針被用為調用它所指向的函數時,我們就說這是回調函數。也可以說回調函數是應用程序提供給Windows系統DLL或其它DLL調用的函數,一般用於截獲消息、獲取系統信息或處理非同步事件。