node.js中的forEach()是同步还是异步呢


Posted in Javascript onJanuary 29, 2015

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创作

Javascript 相关文章推荐
ExtJS 2.0 实用简明教程之布局概述
Apr 29 Javascript
关于javascript中的parseInt使用技巧
Sep 03 Javascript
javascript iframe编程相关代码
Dec 28 Javascript
iframe的onload在Chrome/Opera中执行两次Bug的解决方法
Mar 17 Javascript
DOM事件阶段以及事件捕获与事件冒泡先后执行顺序(图文详解)
Aug 18 Javascript
JavaScript获取各大浏览器信息图示
Nov 20 Javascript
JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享
Nov 01 Javascript
JavaScript瀑布流布局实现代码
May 06 Javascript
node.js多个异步过程中判断执行是否完成的解决方案
Dec 10 Javascript
jQuery实现的模仿雨滴下落动画效果
Dec 11 jQuery
ios中视频的最后一桢问题解决
May 14 Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
Aug 13 Javascript
Node.js事件循环(Event Loop)和线程池详解
Jan 28 #Javascript
使用Sticker.js实现贴纸效果
Jan 28 #Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
Jan 28 #Javascript
7个让JavaScript变得更好的注意事项
Jan 28 #Javascript
简单谈谈javascript代码复用模式
Jan 28 #Javascript
JS动态添加Table的TR,TD实现方法
Jan 28 #Javascript
扒一扒JavaScript 预解释
Jan 28 #Javascript
You might like
用PHP和ACCESS写聊天室(八)
2006/10/09 PHP
php socket方式提交的post详解
2008/07/19 PHP
网页游戏开发入门教程三(简单程序应用)
2009/11/02 PHP
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
php上传文件的增强函数
2010/07/21 PHP
PHP基础之运算符的使用方法
2013/04/28 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
DIY jquery plugin - tabs标签切换实现代码
2010/12/11 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
微信小程序 教程之wxapp视图容器 scroll-view
2016/10/19 Javascript
jQuery层级选择器实例代码
2017/02/06 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
2017/07/17 jQuery
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
在antd Form表单中select设置初始值操作
2020/11/02 Javascript
python生成器的使用方法
2013/11/21 Python
netbeans7安装python插件的方法图解
2013/12/24 Python
Python标准库06之子进程 (subprocess包) 详解
2016/12/07 Python
Python求出0~100以内的所有素数
2018/01/23 Python
Python深拷贝与浅拷贝用法实例分析
2019/05/05 Python
PIL包中Image模块的convert()函数的具体使用
2020/02/26 Python
美国在线眼镜店:GlassesShop
2018/11/15 全球购物
Sperry澳大利亚官网:源自美国帆船鞋创始品牌
2019/07/29 全球购物
加拿大在线隐形眼镜和眼镜店:VisionPros
2019/10/06 全球购物
波兰在线运动商店:YesSport
2020/07/23 全球购物
Genny意大利官网:意大利高级时装品牌
2020/04/15 全球购物
护理专业自我鉴定
2014/01/30 职场文书
学习十八大报告感言
2014/02/04 职场文书
竞选学习委员演讲稿
2014/04/28 职场文书
电气工程及其自动化专业求职信
2014/06/23 职场文书
大学生职业生涯规划大赛作品(精品)
2014/09/17 职场文书
2014年小学班主任工作总结
2014/11/08 职场文书
2014年档案室工作总结
2014/12/01 职场文书
海底两万里读书笔记
2015/06/26 职场文书
2016教师学习教育法心得体会
2016/01/19 职场文书