javascript验证方法

本文介绍了多个JavaScript函数,用于验证数值类型(正整数、小数)、邮箱格式、中文名称以及浏览器特性(SVG、Canvas支持、微信环境)。同时,提供了浏览器内核和平台的检测方法,包括 Trident、WebKit、Gecko、iOS、Android 等。
摘要由CSDN通过智能技术生成
/**
 * 判断是否是正整数
 * @param value 需要判断的值
 * @return {boolean} 返回true是正整数,false则不是正整数
 */
function isInteger(value) {
	// 判断是否是整数,最好不要使用isNaN方法,因为该方法会把数后面加一个小数点也判断为数字
	var reg = /^([0-9]?||[1-9][0-9]*)$/;
	return reg.test(value);
}

/**
 * 判断是否超出count位小数
 * @param value 需要判断的值
 * @param count 小数位数,count最小值为1,如果传入的count小于1,则默认为1
 * @return {boolean} 返回true未超出count位小数,返回false则是超出了count小数
 */
function isDecimal(value, count) {
	var scope = count < 1 ? 1 : "1," + count;
	var reg;
	if (value.indexOf(".") > 0) {
		// 当使用构造函数创造正则对象时,需要常规的字符转义规则(在前面加反斜杠 \)
		// 当n = 2时,以下等价于:var reg=/^([1-9]\d+||[0-9])[.]\d{1,2}$/;
		reg = new RegExp("^([1-9]\\d+||[0-9])[.]\\d{" + scope + "}$");
	} else {
		reg = new RegExp("^\\d+$");
	}
	return reg.test(value);
}

/**
 * 判断是否是邮箱格式
 * @param value 需要判断的值
 * @return {boolean} 返回true是邮箱格式,返回false则不是
 */
function isEmail(value) {
	var reg =/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
	return reg.test(value);
}

/**
 * 校验是否中文名称组成
 * @param str 需要判断的字符串
 * @return {boolean} 返回true表示str是由中文名称组成,返回false则不是
 */
function isChina(str) {
	var reg=/^[\u4E00-\u9FA5]{2,4}$/;
	return reg.test(str);
}

/**
 * 检测浏览器是否支持svg
 * @return {boolean} 返回true支持,返回false不支持
 */
function isSupportSVG (){
	var SVG_NS = 'http://www.w3.org/2000/svg';
	return !!document.createElementNS &&!!document.createElementNS(SVG_NS,'svg').createSVGRect;
}

/**
 * 检测浏览器是否支持canvas
 * @return {boolean} 返回true支持,返回false不支持
 */
function isSupportCanvas() {
	return !!document.createElement('canvas').getContext;
}

/**
 * 检测是否是微信浏览器
 * @return {boolean} 返回true是,返回false不是
 */
function isWeiXinClient (){
	var ua = navigator.userAgent.toLowerCase;
	var res = !!ua.match(/MicroMessenger/i)=="micromessenger";
	return res;
}

/**
 * 检测是否移动端及浏览器内核
 */
var browser = {
	versions: function (){
		var u = navigator.userAgent;
		return {
			trident: u.indexOf('Trident') > -1, //IE内核
			presto: u.indexOf('Presto') > -1, //opera内核
			webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
			gecko: u.indexOf('Firefox') > -1, //火狐内核
			Geckomobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否移动终端
			ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios
			android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android
			iPhone: u.indexOf('iPhone') > -1 , //iPhone
			iPad: u.indexOf('iPad') > -1, //iPad
			webApp: u.indexOf('Safari') > -1 //Safari
		};
	}
}

/**
 * 检测是否电脑端/移动端
 * 
 */
var browser={
	versions:function (){
		var u = navigator.userAgent, app = navigator.appVersion;
		var sUserAgent = navigator.userAgent;
		return {
			trident: u.indexOf('Trident') > -1,
			presto: u.indexOf('Presto') > -1,
			isChrome: u.indexOf("chrome") > -1,
			isSafari: !u.indexOf("chrome") > -1 && (/webkit|khtml/).test(u),
			isSafari3: !u.indexOf("chrome") > -1 && (/webkit|khtml/).test(u) &&u.indexOf('webkit/5') != -1,
			webKit: u.indexOf('AppleWebKit') > -1,gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,
			mobile: !!u.match(/AppleWebKit.*Mobile.*/),
			ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
			android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,
			iPhone: u.indexOf('iPhone') > -1,iPad: u.indexOf('iPad') > -1,
			iWinPhone: u.indexOf('Windows Phone') > -1
		};
	}
}

/**
 * 检测浏览器内核
 */
function getInternet(){
	if(navigator.userAgent.indexOf("MSIE")>0) {
		return "MSIE"; //IE浏览器
	}
	if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){
		return "Firefox"; //Firefox浏览器
	}
	if(isSafari=navigator.userAgent.indexOf("Safari")>0) {
		return "Safari"; //Safan浏览器
	}
	if(isCamino=navigator.userAgent.indexOf("Camino")>0){
		return "Camino"; //Camino浏览器
	}
	if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){
		return "Gecko"; //Gecko浏览器
	}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值