有一个更好的方法吗?

if(cpf.length !== 11 || cpf === "00000000000" || cpf === "11111111111" ||
        cpf === "22222222222" || cpf === "33333333333" || cpf === "44444444444" ||
        cpf === "55555555555" || cpf === "66666666666" || cpf === "77777777777" ||
        cpf === "88888888888" || cpf === "99999999999"){

最佳答案

您可以争论是否更好,但这是我在这种情况下想要做的事情:

// Name this something relevant to the problem
var possibleValues = ["0000000000", ...];
if (possibleValues.includes(cpf)) {
  // do stuff
}


或者如果您所在的环境没有includes

if (possibleValues.indexOf(cpf) > -1) {
  // do stuff
}


另一种可能性是使用正则表达式:

if (cpf.length === 11 && cpf.match(/^(\d)\1+$/)) {
  // do stuff
}



^:从头开始
(\d):寻找数字并记住它
\1+:反复查找记住的数字
$:击中字符串的结尾

07-27 13:50