nodejs开发

nodejs代码封装基础

2018-05-09  本文已影响22人  意外金喜

以加法为例

--return类型

return.js文件:

  var obj = {};  
  obj.sum = function(a, b){  
    var sum = a+b;  
    return sum;  
  }  
  module.exports = obj;  

--callback类型

callback.js文件:

  var obj = {};  
  obj.sum = function(a, b ,callback){  
    var sum = a+b;  
    callback(null,sum)  
  }  
  module.exports = obj;  

--测试

test.js文件:

  var returns  = require('./return.js');  
  var callback = require('./callback.js');  

  //return  
  var sum = returns.sum(3, 5);  
  console.log('return sum :', sum);  

  //callback  
  callback.sum(3, 5, function(err,result){  
    console.log('callback sum :',result);  
  })  

结果

image

总结

return这种封装一般都是处理字符串,日期什么的.

nodejs本身是异步的,所以大部分封装都会用callback这种类型,比如查询数据库封装等.

-- Promise风格

promise.js

  var Promise = require('bluebird')  
  var obj = {};    
  obj.sum = function(a, b){    
    var sum = a+b;   
    return new Promise(function(resolve, reject) {  

      if (sum < 100) {  
      //成功操作,对应 then方法  
      resolve(sum)  
      }  
      else {  
      //失败操作,对应catch方法  
      reject('总和不能大于100')  
    }  
  })   

 }    
  module.exports = obj;   

测试

  var promise = require('./promise');  

  promise.sum(10,3).then(function(sum){  
    console.log('sum :',sum);  
  }).catch(function(err){  
    console.log('err :',err);  
  })  

小于100就打印值,大于100就提示错误.

上一篇 下一篇

猜你喜欢

热点阅读