用于判断数据是否是对象,是否是数组,是否为空,是否是字符串等等,另外还有常用的邮箱号码,手机号码等校验
// 判断是否为JSON对象
function isJson(obj) {
return typeof(obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object object]" && !obj.length;
}
// 判断是否为数值
function isNumber(obj) {
var reg_exp = /^[0-9]+$/;
if (obj == "") {
return false;
}
return reg_exp.test(obj);
}
// 判断是否是数组
function isArray(obj) {
return Object.prototype.toString.call(obj) === '[object Array]';
}
// 判断是否为空
function isNull(obj) {
return (typeof(obj) == 'undefined') ? true : ((obj == null) ? true : obj === "");
}
// 判断数据类型是否为undefined
function isUndefined(obj) {
return typeof(obj) === "undefined";
}
// 判断是否为字符串
function isString(obj) {
return typeof obj !== "undefined" && obj !== null && (typeof obj === "string" || obj.constructor === String);
}
// 判断是否是对象
function isObject(obj) {
return obj !== null && typeof obj === 'object';
}
// 判断对象是否是正则表达式
function isRegExp(obj) {
return Object.prototype.toString.call(obj) === '[object RegExp]';
}
// 判断对象是否是方法
function isFunction(obj) {
return Object.prototype.toString.call(obj) === "[object Function]";
}
// 判断是否是纯粹的对象
function isPlainObject(obj) {
return Object.prototype.toString.call(obj) === '[object Object]';
}
// 姓名验证
function isName(name) {
return (name.search(/^[\u0391-\uFFE5\w]+$/) != -1);
}
// 邮箱验证
function isEmail(email) {
return (email.search(/^([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+\.(?:com|cn)$/) != -1);
}
// 验证电话号码
function isTelPhone(telphone) {
return (telphone.search(/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/) != -1);
}
// 验证手机号码
function isMobile(tel) {
return (tel.search(/^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/) != -1);
}
// 验证QQ
function isQQ(qq) {
return (qq.search(/^[1-9]\d{4,8}$/) != -1);
}
// 生日验证
function isBirthDay(day) {
return (day.search(/\d{1,4}\-\d{1,2}\-\d{1,2}/) != -1);
}