IO 是 Input/Output 的简写,常见的输入包括控制台(键盘)输入、文件输出;常见的输出包括控制台(显示器)输出、文件输出——这些都是很早就存在的概念。现在 IO 还包括网络IO、设备IO……只要是输入输出就可以称为 IO。
你给的这段代码只是 IO 中读取文件,也就是从文件输入的一个例子。相对于其它语言或环境中常见读文件操作来说,这里比较特殊的一点在于它是异步的,在发起读文件请求(fs.readFile
)的同时,传递了一个回调((err, data) => {...}
)作为参数进去,要求读取文件完成之后由IO库调用这个回调,把文件内容(data
)作为参数传递给回调函数,以便回调函数对其进行处理。而处理过程,即回调函数,是在发起读文件请求的时候就已经定义好的。
我估计你是对异步这个概念不是很清楚,但是如果在这里说,几句话也说不清楚,建议你去搜一下相关资料来看看。就搜 “JavaScript 异步”
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…