当前位置: 首页 > 工具软件 > JSCheck > 使用案例 >

最新JS验证手机号码(2021)

慕容兴贤
2023-12-01

现在手机号码,为什么没有10、11、12开头的手机号码?

10开头的号段是电信服务号码,比如10000电信客服电话,10001联通客服电话,10086移动客服电话;
11开头的号段是特种服务号码,比如110报警电话、111电信内部测试电话、112报修电话、114便民电话、119火警电话等;
12开头的号段是民用特殊号码,比如120急救电话、121天气预报电话、122交通事故告警电话、12312保护知识产权举报电话、12315消费投诉热线等

根据移动、联通、电信的电话号码号段,实现一个简单的正则表达式来验证手机号码:

/*
  * 移动号码包括的号段:134/135/136/137,138,139;
*                     147/148(物联卡号);
*                     150/151/152/157/158/159;
*                     165(虚拟运营商);
*                     1703/1705/1706(虚拟运营商)、178;
*                     182/183/184/187/188
*                     198

* 联通号段包括:130/131
*               145
*               155/156
*               166/167(虚拟运营商)
*               1704/1707/1708/1709、171
*               186/186
*
* 电信号段包括: 133
*                153
*                162(虚拟运营商)
*                1700/1701/1702(虚拟运营商)
*                180/181/189
*                191/199
* */

代码如下:

方法一:

function checkPhone(){ 
    var phone = $(".phone").val();
    if(!(/^1[3456789]\d{9}$/.test(phone))){ 
        alert("手机号码不合法,请重新输入");  
        return false; 
    } 
}

方法二:

function checkPhone(){ 
    var phone = $(".phone").val();
    if(!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(phone))){ 
        alert("手机号码不合法,请重新输入");  
        return false; 
    } 
}
 类似资料: