node学习--回调函数

node是一个平台,既不是语言,也不是javascript的库,只是node的运行环境选择了javascript语言。node是异步、非阻塞、单线程、错误优先的。

新建一个text.txt 文件  内容为:123456

1.阻塞代码示例

var fs = require("fs");

var data = fs.readFileSync("text.txt")   //同步读取文件,这里会产生的是二进制流

console.log(data);  // 输出二进制流
console.log("执行完毕");

输出结果,是

<Buffer 31 32 33 34 35 36>

执行完毕  

在文件没读取完之前是不会往后读取文件的

2非阻塞

var fs = require("fs");
fs.readFile("text.txt‘,function(err,data){  // 异步执行
   if(err){
     return console.error(err);   //错误优先
   }
   console.log(data);
})

console.log("执行完毕");

输出

执行完毕  

<Buffer 31 32 33 34 35 36>     文件加载会单独启动一个进程去处理,代码继续执行,非阻塞的优势可以处理大量的并发请求。

				
时间: 2024-10-07 18:42:31

node学习--回调函数的相关文章

【Node.js学习四】 Node.js回调函数

Node.js 回调函数 Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了. 回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数. 例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回.这样在执行代码时就没有阻塞或等待文件 I/O 操作.这就大大提高了 Node.js 的性能,可以处理大量的并发请求. 下面对阻塞代码和非阻塞代码分别举出一例

node.js 回调函数、事件循环、EventEmitter ar

异步编程  node.js 编程的直接体现就是回调,异步编程依托于回调来实现: node使用了大量的回调函数,所有API都支持回调函数 .如读取文件等. 这里对不懂线程和异步和同步的稍微解释下这三个名词 . 线程 : 简单的说就是做一件事 . 即执行一段程序代码 .js引擎就是一个单线程 的 处理 方式 .单线程是说 同一时间只能做一件事 . 同步 :就是这件事必须要先做完前面的才能做后面的,否则后面的无法完成. 这就像我们的js代码会从上往下 运行 . 异步 :简单的说就是两个线程,你做你的,

Node.js 回调函数 1) 阻塞 ,同步 2) 非阻塞 ,异步.

1.阻塞. 同步. 1) 读取的文件: input.txt 菜鸟教程官网地址:www.runoob.com 2) main.js 1 var fs = require("fs"); 2 3 //同步读取, 阻塞代码,按顺序执行的 4 var data = fs.readFileSync('input.txt'); 5 6 console.log(data); 7 console.log(data.toString()); 8 console.log("程序执行结束!"

5、Node.js 回调函数

内容:回调函数:阻塞/同步.非阻塞.和异步区别:阻塞和非阻塞代码实例 Node.js 回调函数Node.js 异步编程的直接体现就是回调.异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了.回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数.例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回.这样在执行代码时就没有阻塞或等待文件 I/O 操作.这就大大提高了 Node.js 的性能,可

Node.js 回调函数

callback: A callback is a function that is passed as an argument to another function and is executed after its parent function has completed. Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了. 回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数.

同步和异步 以及node js 回调函数

1.创建一个input.txt 文本文件   里面随便写一些内容 2.创建main.js文件 var fs = require("fs"); var data = fs.readFileSync('input.txt');(这个地方一定要加上后缀的名字) console.log(data.toString()); console.log("程序执行结束!"); 3.上述为同步的代码 执行结果如下 $ node main.js 菜鸟教程官网地址:www.runoob.

node.js回调函数

Node.js 异步编程的直接体现就是回调. 阻塞代码var fs = require("fs"); var data = fs.readFileSync('input.txt'); console.log(data.toString()); console.log("程序执行结束!"); //readFileSync()同步的方式读取文件 //执行结果如下 $ node main.js xxxxxxxxxxxxxxx(input.txt内容) 程序执行结束! 非阻

js深入学习-回调函数之代码复用

在js中经常回有一个代码块在多个地方重复利用,这种做法不利于代码的优化,同时对于后期人员的维护也是一个麻烦,假如后期人员需要修改重复利用的代码块,往往会出现只修改其中一处而导致问题,其实处理很简单. 把重复利用的代码块抽出来单独写成一个函数.别的地方直接调用这个函数就行了. 例如有 两个函数F1,F2,都会执行代码块CODE1,我们可以CODE1封装成F3, funcitn F1(){ F3 } funcitn F2(){ F3 } 但是实际情况中会出现这种情况,F1中需要执行F3,F4,且F3

node.js回调函数 - 阻塞与非阻塞

1.阻塞调用(读取完文件再执行后面的操作) var fs = require("fs"); var data = fs.readFileSync('/fs.txt'); console.log(data.toString()); console.log("程序执行结束!"); 输出结果: “文件内容” “程序执行结束!” 2.非阻塞调用(读取文件和其他操作同步执行) var fs = require("fs");  fs.readFile('/f