zoukankan      html  css  js  c++  java
  • Nodejs 处理异步(获取异步数据并处理)的方法

    方法1. 回调函数方式

    将异步方法如readFile封装到一个自定义函数中,通过将异步方法得到的结果传给自定义方法的回调函数参数。具体如下(以fs模块的readFile方法为例):

    //封装
    var func = function(filePath,callback){
        fs.readFile(filePath, function(err, data){
            if(err){
                return false;
            }
            callback(data);
        }) 
    }
    
    //调用
    func('./a.txt', function(res){
        //处理异步方法返回得到的数据
        console.log(res);
    })

     方法2. 事件驱动方式

    使用node events模块,利用其EventEmitter对象广播和接收广播的方式传输异步方法返回的结果。具体如下(仍以fs模块的readFile异步方法为例):

    var events = require('events');
    
    var EventEmitter = new events.EventEmitter();
    fs.readFile('./a.txt', function(err, data){
        //数据读取后发出readData信号的广播,并将数据data传出
        EventEmitter.emit('readData', data);
    })
    
    //监听readData信号,并对监听到的数据做处理(也可先定义监听,再做异步的读取操作)
    EventEmitter.on('readData', function(res){
        //处理异步读取得到的数据
        console.log(res);
    })
  • 相关阅读:
    浅谈C#托管程序中的资源释放问题
    c#基本语法学习笔记
    深入剖析C#多态性
    Reporting Services API
    进程和线程的区别
    化妆品网站,饰品网站
    宠物销售网站
    卖地方特色才产品,类似湖南味道那样的网上专卖店
    建立友情链接联盟
    DIY最残忍U盘
  • 原文地址:https://www.cnblogs.com/zhcBlog/p/10170789.html
Copyright © 2011-2022 走看看