手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >node.js中的forEach()是同步还是异步呢
node.js中的forEach()是同步还是异步呢
摘要:node里几乎所有用到回调函数的地方,都是异步的,回调函数后面的代码很可能比回调函数中的代码后先执行,特别是数据库操作。当然,node也提供...

node里几乎所有用到回调函数的地方,都是异步的,回调函数后面的代码很可能比回调函数中的代码后先执行,特别是数据库操作。当然,node也提供了同步版本的函数,例如文件操作,fs.readFileSync()是fs.readFile()的同步版本。

那么问题来了,forEach()是不是异步的呢?按理说,没有加Sync,应该是异步的呀。

复制代码 代码如下:

var arr = ['a', 'b', 'c'];

var str = '123';

arr.forEach(function(item) {

str += item;

while (true) {}; //用一个死循环,卡死它~~

});

console.log(str);

运行上面的代码,结果它就这么卡死了,没有任何输出。。

所以说,node里的forEach()是同步的!!

第一次用node的时候,没有考虑过这个问题,按同步的写了,写突然想到,测试后虚惊一场,以为以前的代码都写错了。

如果在某些情况下,需要异步处理forEach,谷歌了一下,有个node-array,可以试试看~~ 传送门:https://github.com/cfsghost/node-array

本作品由http://www.cnblogs.com/ImYZF创作

【node.js中的forEach()是同步还是异步呢】相关文章:

探索angularjs+requirejs全面实现按需加载的套路

脚本写的IE右键助手

JavaScript中的replace()方法使用详解

js+html5通过canvas指定开始和结束点绘制线条的方法

JavaScript中的pow()方法使用

AngularJS中的一些常用指令介绍

自己编写的支持Ajax验证的JS表单验证插件

JavaScript中的italics()方法的使用介绍

AngularJS 2.0新特性有哪些

你都知道吗关于高性能JAVASCRIPT?

精品推荐
分类导航