demo.js(第一种方式,异步请求改成同步请求):
var fs = require('fs'); //引入fs模块 //异步方式读取文件内容 fs.readFile('./package.json',function(error,data){ if(error){ console.log(error); return false; } //console.log(data); //data是读取的十六进制的数据 console.log(data.toString()); //读取出所有行的信息 }); //同步方式读取文件内容 var data=fs.readFileSync('./package.json'); console.log(data.toString());demo.js(第二种方式,通过回调函数(函数作为参数进行传递)):
var fs=require('fs'); function getMime(callback){ //readFile()函数是异步的 fs.readFile('mime.json',function(error,data){ callback(data); }) } //将回调函数当做参数进行传递 getMime(function(result){ console.log(result.toString()); });demo.js(第三种方式,通过events模块,事件驱动):
//我们可以通过引入 events 模块,并通过实例化 EventEmitter 类来绑定和监听事件, var events=require('events'); // 引入 events 模块 var EventEmitter=new events.EventEmitter(); //广播和接收广播的类 //监听to_parent事件的广播 EventEmitter.on('to_parent',function(data){ console.log("接收的数据是:" + data); //通过监听to_parent事件的广播,接收到数据 }) //setTimeout是异步的 setTimeout(function(){ console.log('开始广播...'); EventEmitter.emit('to_parent','发送的数据'); //广播to_parent事件 },1000);