<script type="text/javascript">
$(function(){
f1(f2());
});
function f1(){
alert("f1");
};
function f2(){
alert("f2");
};
</script>
以上是jquery里面的写法,用之前需要引用相关的文件,f2函数是作为参数传过去的因此先弹出“f2”后弹出“f1”
注意此处的f2()是参数,所以要先走f2,后走f1;
如果f2没有加括号,那么相当于f2没有执行,只执行了f1,结果只是弹出f1了,代码如下:
$(function(){
f1(f2);
});
但是如下的回调函数:
<script type="text/javascript">
$(function(){
f1(f2);
});
function f1(callback){
alert("f1");
callback.call(this);
};
function f2(){
alert("f2");
};
</script>
就是先弹出f1,后弹出f2,只是作为一个最后的回调函数来说的,先把f1走了,再走f2;
但是如下
<script type="text/javascript">
$(function(){
f1(f2);
});
function f1(callback){
callback.call(this);
alert("f1");
};
function f2(){
alert("f2");
};
</script>
救是先弹出f2,后弹出f1,只是因为先走f1但是又是先走了回调函数,所以先弹出f2后弹出f1