在进入下一个NodeJS部份前想先讲一下Callback(回呼),这个概念不会占太大的篇幅,所以这篇可能会有点短...
回呼是指将某个函式(A)传入另一个函式(B),A函式在B执行时并未直接被执行,而是透过B函式设计的某个时间点或情况触发A函式被执行。意即先设定一个情况下所会被触发的程序码,在该情况发生时才会被呼叫并执行。
Callback印出字串
- 定义一个包含回呼函式
callback
的greet
函式。function greet(callback){ console.log("Hello!"); callback(); }
- 呼叫
greet
函式并定义回呼函式内容。greet(function(){ console.log("Callback is envoked."); });
- 执行後会先印出
greet
函式中的字串,然後是被触发的回呼函式所印出的字串。
具有参数的Callback
- 定义一个包含
data
资料与回呼函式callback
的greet
函式,将data
作为callback
的参数。function greet(callback){ console.log("Hello!"); let data = { name: "chwk", time: new Date() } callback(data); }
- 呼叫
greet
函式并定义回呼函式内容,印出data
。greet(function(data){ console.log("Callback is envoked."); console.log(data); });
- 执行後会先印出
greet
函式中的字串,然後是被触发的回呼函式所印出的字串及greet
中定义的data
,可以知道回呼函式在greet
中就被定义,因此传入的参数可以在触发时直接取得印出。
回呼函式的被触发除了像前面练习所使用的函式内直接呼叫外,也可以是因为事件进行触发,这部分在接下来的NodeJS部份会再提到,谢谢大家今天的阅读。
>>: Day 10 Template message in Messaging API
大家好,我是长风青云。今天是铁人赛第十四天。恭喜你们听到我带点磁性的声音(?) 我要滚去休息了。 ...
Rails 里常常出现的 Migration 又是什麽呢?大家常常误解他,让我们来认识一下他吧。 ...
Hello 大家, 今天介绍一个官方的捷径, 这个捷径是针对图片资讯中的“位置”来查找照片拍摄的地方...
# -*- coding: utf-8 -*- import cv2 import numpy as...
第四天给大家科普一些基本知识。 程序(program)是一种指令集合可以让电脑完成你指定的工作,但必...