node中同步和异步的区别是什么?

同步就是程序自上而下运行,而异步就是不用等待上面的运行完后再运行下面的操作。异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。

node中的同步与异步:

1、什么是同步?

同步:上一步执行完后下一步才能得到执行。

2、什么是异步

异步:将比较复杂的任务制作成任务线程,以任务线程实现,不用等上一句执行完,下一句也可以执行。

下面通过nodejs的两个例子来展现同步与异步的不同之处。

新建一个txt文件,然后随便输入几个字,保存,保存的时候记得要保存为UTF-8的编码格式。否则会出现乱码

然后创建个js文件,内容如下

var fs = require("fs");
var data = fs.readFileSync('input.txt');
console.log(data.toString());
console.log("程序执行结束");

在cmd中输入node main.js运行创建的js文件,会输出如下内容:

上面那个是同步(阻塞)代码,下面这个是异步(非阻塞)。

再创建个main1.js文件

var fs = require("fs");
fs.readFile('input.txt',function(err,data){
	if(err) return console.error(err);
	console.log(data.toString());
});
console.log("非阻塞代码实例运行成功");

上面阻塞代码程序是正常的同步加载,代码由上到下执行。下面这个异步(非阻塞)代码程序会先输出下面的console.log()然后才执行回掉函数里的代码。

总结:

node中同步异步的区别:同步就是程序自上而下运行,而异步不用等待上面的程序运行完就运行下面的操,异步编程依托于回调来实现。

以上就是node中同步和异步的区别是什么?的详细内容,更多请关注易知道|edz.cc其它相关文章!

推荐阅读