var data = {
"username" : "zhangsan",
"password" : "12345690",
"code" : "abcd"
};
var validate = {
rules : {},
config : {},
msg : [],
check : function(data){
var k, rule, config, checker;
rule = this.rules;
config = this.config;
this.msg.length = 0;
for(k in data){
if(data.hasOwnProperty(k)){
if(!rule[k]){
throw new Error("validate.check error, error type: " + k + " not exist");
}
checker = this.rules[k];
if(!checker.validate(data[k])){
this.msg.push(checker.msg);
}
}
}
}
};
validate.rules.username = {
validate : function(username){
return username.length > 7;
},
msg : "用户名有误"
};
validate.rules.password = {
validate : function(password){
return password.length > 7
},
msg : "密码挂了"
};
validate.rules.code = {
validate : function(code){
return code === "abcdef";
},
msg : "验证码不对"
};
validate.check(data);
if(validate.msg.length){
console.log(validate.msg.join("\n"));
}