Promise:字面含义:一定给予你承诺过的结果

##.普通的写法

err:表示异常 data: 想要的数据

const fs = require('fs');//此处引入的模块必须是字符串形式

fs.readFile('./package.json',(err,data)=>{

if(err) return console.log(err)

data = JSON.parse(data)

console.log(data.name)

})

##.promise的写法

function readFileAsync(path){

return new Promise((resolve,reject)=>{

fs.readFile(path,(err,data)=>{

if(err) reject(err)

else resolve(data)

})

});

}

//promise写法的调用

readFileAsync('./package.json')

.then(data=>{

data = JSON.parse(data);

console.log(data.name)

})

.catch(err=>{

console,log(err);

})

##.node新增模块util模块下的promisify()的用法

const util = require('util');

util.promisify(fs.readFile)('./package.json')

.then(data=>{

data = JSON.parse(data);

console.log(data.name);

}.catch(err=>{

console.log(err);

})

})