nodejs代码封装基础

来源:互联网 发布:七月算法 邹博退出 编辑:程序博客网 时间:2024/05/21 04:39

以加法为例

--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');//returnvar sum = returns.sum(3, 5);console.log('return sum :', sum);//callbackcallback.sum(3, 5, function(err,result){console.log('callback sum :',result);})

结果


总结

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就提示错误.


0 0
原创粉丝点击