最近有涉及到港澳台手机号验证,就写了一个校验
/**
*@param { } // 0 中国内陆电话手机 1 中国香港电话 2中国台湾电话 3 中国澳门电话 4中国内陆座机
@returns Boolean
*/
export function isAllPhone(str, type = "all") {
const island = /^[1][3-9]\d{9}$/;
const hk = /^(00)?(852)[5|6|9]\d{7}$/;
const taiwang = /^[0][9]\d{8}$/;
const aomen = /^(00)?(853)?[6]\d{7}$/;
const islandTel = /^(?:(?:\d{3}-?)?\d{8}|^(?:\d{4}-?)?\d{7,8})(?:-\d+)?$/;
const regObj = {
0: island,
1: hk,
2: taiwang,
3: aomen,
4: islandTel,
};
if (type === "all") {
return Object.values(regObj).some((v) => v.test(str));
} else {
return regObj[type].test(str);
}
}
每次输入校验就可以了
https://blog.csdn.net/sophiazcsu/article/details/131781891