技术解析
这里有一个很基本的函数:
function box(val){
console.log('假设这是函数原有代码');
val(); //这是回调函数
}
现在控制台运行它的结果是这样的:
box(function(){console.log('回调函数 01')}); //返回 [假设这是函数原有代码] + [回调函数 01 ]
box(function(){console.log('回调函数 02')}); //返回 [假设这是函数原有代码] + [回调函数 02 ]
很正常,上一次的结果被这次的参数替代掉了
现在要达到的需求:
box(function(){console.log('回调函数 01')}); //返回 [假设这是函数原有代码] + [回调函数 01 ]
box(function(){console.log('回调函数 02')}); //返回 [假设这是函数原有代码] + [回调函数 01 ] + [回调函数 02 ]
说简单点就是:如何在一个函数内追加新的代码片段,更新这个 box 函数,还不能执行它(它也是回调函数,有条件才能激活的) 请问该如何做到,如果有懂得 v 友,还希望不要吝啬赐教。