node.js回调callback & prototype
一个回调的例子
var make = function (a,b,callback){ var data = a + b; if(data>10){ callback(null,data); }else{ callback("error",data); } } make(31,5,function(err,data){ if(err){ console.log(err) return err; } console.log(data); })
一般情况下的用法
config.js
exports.check = function (a,b,callback){ var data = a + b; if(data>10){ callback(null,data); }else{ callback("error",data); } }
使用
var x = require('./config'); x.check(4,8,function(er,data){ if(er){ console.log(er); return; } console.log(data) })
关于 prototype
var obj = function(val){ this.val = val; } obj.prototype.checks = function(){ if(this.val.indexOf("pass") >=0){ return true; }else{ return false; } } var res = new obj("1223pass"); var s = (res.checks()) ? "含有":"不含"; console.log(s);
关于 prototype 的更多详细信息请参看 http://javascript.ruanyifeng.com/oop/prototype.html
错误处理机制
try{ console.log(name); }catch(err){ console.log("变量未定义"); }finally{ console.log("ending") //finally语句始终执行 }