Node.js 检查字符串是否仅包含数字时出错
Node.js 检查字符串是否仅包含数字时出错,node.js,Node.js,let duration=“365460" console.log((/^\d+$/.test(duration))在365460后面有一个额外的字符,这就是您的模式不匹配的原因 您可以使用以下方法在将来诊断此类问题: const duration=“365460"; for(设i=0;i
let duration=“365460"
console.log((/^\d+$/.test(duration))
在365460后面有一个额外的字符代码>,这就是您的模式不匹配的原因
您可以使用以下方法在将来诊断此类问题:
const duration=“365460";
for(设i=0;i
您可以使用isNaN()
,这将是您案例中的相关语法
isdigit(str) {
let pattern = /^\d+$/
if (str.match(pattern)) {
return true
} else {
return false
}
}
您可以使用上面的函数,它解决了只检测数字的问题。字符串末尾有一个字符使结果为假
duration=“365460"
console.log(duration.split(“”);
console.log(duration.length);//7而不是6
。请不要提供打字问题的答案,只需投票结束并继续。考虑到OP的用例是“只包含数字的字符串”,否。isNaN
将为“0xABC”
或“-1.E+2返回false“
此外,这并不能解决OP的问题,因为它不能解决他们的示例中出现的问题。