求一个最新js验证手机号的代码

 我来答
该问答中所提及的号码未经验证,请注意甄别。
侍抒怀0HG
2017-01-09 · TA获得超过7090个赞
知道大有可为答主
回答量:2091
采纳率:100%
帮助的人:179万
展开全部

使用JS验证手机号可以使用正则表达式:

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。

JS中的正则函数:

RegExp()

RegExp 对象用于规定在文本中检索的内容。

match()

match 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。

匹配手机号码的正则表达式:

^((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)$

构建子函数:

function IsTel(Tel){
var re=new RegExp(/^((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)$/);
var retu=Tel.match(re);
if(retu){
return true;
}else{
return false;
}
}

调用方法:IsTel(手机号码);

如果是正确的手机号返回true否则返回false

Prince____Yu
2013-12-25 · TA获得超过3718个赞
知道小有建树答主
回答量:864
采纳率:33%
帮助的人:958万
展开全部
var tel = 18767802354;
 var reg = /^0?1[3|4|5|8][0-9]\d{8}$/;
 if (reg.test(tel)) {
      alert("号码正确~");
 }else{
      alert("号码有误~");
 };

匹配13,14,15,18开头的手机号码!

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
玫瑰华人
2019-03-07 · TA获得超过204个赞
知道答主
回答量:437
采纳率:60%
帮助的人:27.5万
展开全部

JS判断手机号是否正确(正则表达式)最简单版!

/**
 * 检查手机号码
 * 
 * @param mobile
 * @returns {Boolean}
 */
function check_mobile(mobile) {
var regu = /^\d{11}$/;
var re = new RegExp(regu);
if (!re.test(mobile)) {
return false;
}
return true;
}

--------------------- 

作者:dongsir 董先生 

来源:董先生的博客

原文链接:js 检查手机号码

版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。转载时请标注:http://dongsir.cn/p/172

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友eeab6340a
2020-01-31 · TA获得超过1061个赞
知道答主
回答量:450
采纳率:36%
帮助的人:32.2万
展开全部
var isChinaMobile = /^134[0-8]\\d{7}$|^(?:13[5-9]|147|15[0-27-9]|178|18[2-478])\\d{8}$/; //移动方面最新答复
var isChinaUnion = /^(?:13[0-2]|145|15[56]|176|18[56])\\d{8}$/; //向联通微博确认并未回复
var isChinaTelcom = /^(?:133|153|177|18[019])\\d{8}$/; //1349号段 电信方面没给出答复,视作不存在
var isOtherTelphone = /^170([059])\\d{7}$/;//其他运营商
var utils = {
checkMobile: function(telphone){
telphone = this.trim(telphone);
if(telphone.length !== 11){
return this.setReturnJson(false, '未检测到正确的手机号码');
}
else{
if(isChinaMobile.test(telphone)){
return this.setReturnJson(true, '移动', {name: 'ChinaMobile'});
}
else if(isChinaUnion.test(telphone)){
return this.setReturnJson(true, '联通', {name: 'ChinaUnion'});
}
else if(isChinaTelcom.test(telphone)){
return this.setReturnJson(true, '电信', {name: 'ChinaTelcom'});
}
else if(isOtherTelphone.test(telphone)){
var num = isOtherTelphone.exec(telphone);
return this.setReturnJson(true, '', {name: ''});
}
else{
return this.setReturnJson(false, '未检测到正确的手机号码');
}
}
},
setReturnJson: function(status, msg, data){
if(typeof status !== 'boolean' && typeof status !== 'number'){
status = false;
}
if(typeof msg !== 'string'){
msg = '';
}
return {
'status': status,
'msg': msg,
'data': data
};
}
}
易语言版手机号验证原代码,自已用工具把它调试成型就可以用了,加载进常量就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
单身Mvp
2013-12-25 · TA获得超过245个赞
知道小有建树答主
回答量:240
采纳率:100%
帮助的人:151万
展开全部
if(!/^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/i.test(mobile))
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式