weex-nuke
Version:
基于 Rax 、Weex 的高性能组件体系 ~~
37 lines (34 loc) • 1.26 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.url = url;
exports.alphaNumeric = alphaNumeric;
exports.decimal = decimal;
exports.existy = existy;
exports.func = func;
exports.emptyObj = emptyObj;
function url(value) {
var pattern = /^(?:(?:https?|ftp):\/\/)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/i;
return pattern.test(value);
}
// basic charactor
function alphaNumeric(value) {
var pattern = /^[A-Za-z0-9]+$/;
return pattern.test(value);
}
// legal deciaml
function decimal(value) {
var pattern = /^[-+]?[0-9]\d*(\.\d+)?$/;
return pattern(value);
}
// exist or not
function existy(value) {
return value !== null && value !== undefined;
}
function func(value) {
return Object.prototype.toString.call(value) === '[object Function]';
}
function emptyObj(value) {
return Object.keys(value).length === 0 && value.constructor === Object;
}
;