// 负整数
re = /^-[0-9]+$/g
console.log('负整数')
console.log('-1 test: true ', re.test(-1)) // true
console.log('-2 test: true ', re.test(-2)) // false
第二行输出为:true
第三行输出为:false
为什么?
// 负整数
re = /^-[0-9]+$/g
console.log('负整数')
console.log('-1 test: true ', re.test(-1)) // true
console.log('-2 test: true ', re.test(-2)) // false
第二行输出为:true
第三行输出为:false
为什么?
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答884 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
把正则里面的
g
去掉。用
g
的时候,正则时内部是有一个lastIndex来记录最后匹配的位置。当重复调用的时候,会接着上次的lastIndex继续匹配,故而将导致判断出错。