BOSS要我写个JS,判断输入的字符串是否是电信号码。没什么难度,随手笔记
/**
* 验证手机号码是否为电信的号码,133、153、180、189 ,例如字符串:13398781234,18922225555,11212aa
* 并且要求输入的号码用英文逗号隔开,如果没有是中文的逗号要转为英文的逗号
* @param {} obj
* 如果验证通过,则返回空,否则返回错误的字符串
*
*/
function validateDXNumber(obj){
var returnStr = '';
var newObj = '';
if(obj != '' && obj != 'undefined'){
if(obj.indexOf(',') > -1){ //如果字符串含有 中文逗号
//alert('含有中文逗号');
newObj = obj.replace(/,/g, ','); //替换所有的,js没有replaceAll方法
}else{
newObj = obj;
}
}
var reg = /^(133|153|180|189)\d{8}$/;
var objArray= new Array();
objArray = newObj.split(',');
for(var i=0; i<objArray.length;i++){
if(reg.test(objArray[i])){
//alert(objArray[i] + '正确');
}else{
//alert(objArray[i] + '错误');
returnStr += objArray[i] + ',';
}
}
if(returnStr != ''){
returnStr = returnStr.substring(0, returnStr.length - 1);
}
return returnStr;
}