为何要使用CallBack?
要理解JavaScript是如何执行程序,首先要先理解同步( Synchronous , sync )与异步( Asynchronous , async )程序执行的差异。
同步执行,意思就是一次只能做一件事情,如果安排了很多事情要给他做,他就会让这些事情去排队,再一件一件做,逐行执行。 这就是所谓的同步,一次只做一件事情。 一旦主程序需要执行超长任务时,会有等待的时间或延迟的问题,这样便会影响到後续程序的执行,造成阻塞的情况发生以及时间的浪费。
异步的概念则是刚好相反,同时可以做很多件事情,不需要等到前一件事情做完才做下一件事情。
根据 MDN 定义 setTimeout() 的作用 是在延迟了某段时间 (单位为毫秒) 之後,才去执行「一次」
而 setInterval() 则是固定延迟了某段时间之後,才去执行对应的程序码,然後「不断循环」。
function first(){
console.log('This is first funtion');
}
function second(fn){
for(let i = 1; i <= 1 ; i++){
console.log('This is second funtion');
}
if(typeof fn ==='function')
fn();
}
console.log('一般函式: ')
first()
second()
console.log('回呼函式,function first 被function second(f)以参数的方式传入到second(fn)里: ')
second(first);
//每隔几毫秒做1次
setInterval( first , 2*1000 );
//几毫秒之後做这件事
setTimeout( first , 2*1000 );
<<: [Day - 12] - Spring 注入式效能提升运作与方法
>>: [Day 13] Reactive Programming - Reactor(Processors & Sinks)
填满色彩 在点击画布时,使用 fillStyle 先填上颜色,再覆盖整个画布 /** * 滑鼠点下画...
2021/10/5是我在铁人赛发文到达200篇的日子,这四年多来,不知不觉的就这样累积了200篇的文...
前情提要 艾草:「我们今天来提升一下吧!」 「不是每天都在提升魔力总量了吗?」 艾草:「不一样唷,今...
从入职到现在也帮助部门开发了许多的平台和应用服务,而原本虚拟主机的签约也快到期了,然而前阵子除了接触...
既然我们上传成功了,那麽接着就是要观察我们的结果啦!! 第一步:打开CMD进入资料夹登入heroku...