注意:
1. 无需考虑地区信息、出生日期、顺序码与校验码的验证
2. 只用在编辑器"html"的tab下补全代码就行,不要在其它tab下补全。
_isCard('21062319980907888X')
true
_isCard('21062319980907888X')true
<script>
const _isCard = number => {
// 补全代码
//使用一个正则表达式字面量,其由包含在斜杠之间的模式组成
//^:匹配输入的开始
//括号被称为捕获括号,匹配里面的内容
//\d:匹配一个数字,等价于 [0-9]
//{n}:n 是一个正整数,匹配了前面一个字符刚好出现了 n 次。
//$:匹配输入的结束。
//test:一个在字符串中测试是否匹配的 RegExp 方法,它返回 true 或 false。
var regex = /(^\d{15}$)|(^\d{17}(\d|X|x)$)/
return regex.test(number)
}
</script>
</body></body></html>
也不知道哪错了,有没有高手指点迷津
<script>
const _isCard = number => {
// 补全代码
if(number.toString().length!==18){return false;}
let arr=number.split('');
for(let i=0;i<17;i++){
if(arr[i]>57||arr[i]+'0'<48){return false;}
}
if((arr[17]+'0'<=57&&arr[17]+'0'>=48)||arr[17]==='X'){return true;}
}
</script>