回调函数:一个函数b作为参数,给另外一个函数a使用。并且在执行a之后(注意不一定是执行完a),再去执行b这个函数。
上代码:
function a(callback) { alert("我是parent函数a!我要使用回调函数"); callback();
alert("我是执行完回调函数之后的代码"); } function b() { alert("我是回调函数b"); } a(b);
回调函数执行时注意要加括号,不加括号当作是普通的字符串
call:常用来改变this指向,call(指定的this值,其他参数列表)
一个函数在全局作用域执行的时候,this指向window对象,当需要改变这个this的时候,就使用call
上代码:
<div id="box"></div> <script> oBox = document.getElementById("box"); var a = 1; var b = "hello"; function fn(a, b) { alert(this); alert(a); alert(b); } fn(a, b); fn.call(oBox,a,b); //call函数执行的时候,第一个函数代表函数内部的this指向,传递的第二个参数对应函数的第一个参数,以此类推 </script>
回调函数使用call