/**
* 校验是否是日期
* @param {[type]} datestr [description]
* @return {Boolean} [description]
*/
var isDate = function (datestr) {
var result = datestr.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if (result == null) {
return false;
}
var d = new Date(result[1], result[3] - 1, result[4]);
return (d.getFullYear() == result[1] && (d.getMonth() + 1) == result[3] && d.getDate() == result[4]);
};
/**
* 是否为数字
* @param {[type]} e [description]
* @return {Boolean} [description]
*/
var isNumber = function (e) {
var re = /^[0-9]+.?[0-9]*$/;
return re.test(e);
};
/**
* 校验是否为中文
* @param {[type]} str [description]
*/
var isChinese = function (str) {
if (str.length != 0) {
var reg = /^[\u0391-\uFFE5]+$/;
return reg.test(str);
} else {
return false;
}
};
/**
* 判断是否为空
* @param {[type]} [description]
* @return {Boolean} [description]
*/
var isEmpty = function (obj) {
if (typeof obj === "undefined" || obj === null || obj === "") {
return true;
}
return false;
};
var isUndefined = function (obj) {
if (typeof obj === "undefined") {
return true;
}
return false;
};
/**
* 判断是否为字符串
* @param {[type]} source
*/
var isString = function (source) {
return Object.prototype.toString.call(source) === "[object String]";
};
/**
* 判断是否为function
* @param t
* @returns {boolean}
*/
var isFunction = function e(t) {
return "function" == typeof t && "number" != typeof t.nodeType
};
/**
* trim
* @param str
* @returns
*/
var trim = function (str) { //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
};
var removeStrNull = function (str) {
return str.replace(/\s/g, "");
};
/**
* 是否是固定电话
* @param {[type]} phone [description]
* @return {[type]} [description]
*/
var isTelephone = function (phone) {
var phone_reg = new RegExp(/^([+]{0,1}\d{3,4}|\d{3,4}-)?\d{7,8}$/);
return phone_reg.test(phone);
};
/**
* 校验手机号码
* @param {[type]} mobile [description]
* @return {[type]} [description]
*/
var isMobilephone = function (mobile) {
var mobile_reg = new RegExp(/^0{0,1}1[0-9]{10}$/);
return mobile_reg.test(mobile);
};
/**
* 校验折扣
* @param {[type]} discount [description]
* @return {Boolean} [description]
*/
var isDiscount = function (discount) {
var reg = new RegExp(/^(0([\.]\d{1,2})|1|1.00|1.0)$/);
return reg.test(discount);
};
/**
* 校验电子邮箱
* @param {[type]} email [description]
* @return {[type]} [description]
*/
var isEmail = function (email) {
var email_reg = new RegExp(/^\w+([-+.]\w+)*@\w+([-.]\w+)*.\w+([-.]\w+)*$/);
return email_reg.test(email);
};
/**
* 校验身份证(简单校验)
* @param {[type]} str [description]
* @return {[type]} [description]
*/
var isIDCard = function (str) {
var IDCardReg = new RegExp(/(^\d{15}$)|(^\d{17}([0-9]|X)$)/);
return IDCardReg.test(str)
};
/**
* 改变对象的值,如果未设置,报错
* @param {Object} obj 操作的对象
* @param {String} key 操作的属性
* @param {String} val 改变的值
*/
var xChange = function (obj, key, val) {
if (isUndefined(obj[key])) {
console.error(key + '不存在')
return;
}
obj[key] = val;
};
/**
* 空值安全返回
* @param {any} str
* @param {any} preText
*/
var xrtSafe = function (str, preText) {
if (isEmpty(str)) {
return preText;
}
return str;
};
/**
* 判断是否是数组
* @param {any} arg
*/
var isArray = function (arg) {
return Object.prototype.toString.call(arg) === '[object Array]';
};