什麼是回調函數?
作為參數傳遞給另一個函數的函數被稱為回調函數。(
已定義、未直接調用、最終執行(在特定條件/時刻))
什麼是高階函數?
接受其他函數作為參數的函數稱為高階函數。
<script>
function count (number, callback) {
return callback(number);
}
function plusNumber(number) {
return number+1;
}
console.log(count(10, plusNumber)); // output: 11
</script>
plusNumber作為參數傳遞給count,是以plusNumber是回調函數,count是高階函數。
常見的回調函數有哪些?
DOM事件函數、定時器函數、ajax回調函數
<body>
<button id="btn">按鈕</button>
<script>
var btn = document.getElementById('btn');
btn.onclick = function () {
alert(this.innerHTML);
}
</script>
</body>
alert(this.innerHTML); 定義但沒有直接調用,通過click事件調用。
<script>
var btn = document.getElementById('btn');
(function() {
alert(this.innerHTML);
})();
</script>
以上就是直接調用alert函數。
為什麼使用回調函數?
回調函數可以将調用函數委托給其他函數,讓開發人員使用組合來建構項目,保證代碼簡潔、高效。
參考連結