zoukankan      html  css  js  c++  java
  • Node.js 的异步机制由事件和回调函数——循环中的回调函数

    var fs=require('fs');
    var files =['a.txt','b.txt','c.txt'];
    
    // for (var i = 0; i < files.length; i++) {
    //事实上fs.readFile的回调函数中访问到的i值都是循环退出以后的
    //原因是3次读取文件的回调函数事实上是同一个实例,其中引用到的i值是上面循环执行结束后的值
    //     fs.readFile(files[i],'utf-8',function(err,conetens){
    //         console.log(files[i]+": "+conetens);
    //     });
    // }
    for循环的输出结果:
    undefined: AAA
    undefined: BBB
    undefined: CCC
    //大多数情况下我们可以用数组的forEach方法解决这个问题 files.forEach(function(filename){ fs.readFile(filename,'utf-8',function(err,conetens){ console.log(filename+": "+conetens); }); });
    forEach输出结果:
    a.txt: AAA
    b.txt: BBB
    c.txt: CCC
     
  • 相关阅读:
    Interesting Finds: 2009 01.15 ~ 01.17
    Interesting Finds: 2008.12.07
    Interesting Finds: 2008.12.31
    10月16号
    10月14号
    10月15号
    10月13号
    10月20号
    10月19号
    10月12号
  • 原文地址:https://www.cnblogs.com/Evelia/p/4919565.html
Copyright © 2011-2022 走看看