This question already has answers here:
Why does a RegExp with global flag give wrong results?
(7个答案)
5年前关闭。
在浏览器控制台中,以下函数的输出是一系列交替的true和false。任何的想法?
函数checkSpecificLanguage(text_val){
//强制输入字符串类型在此处输入代码
var regex = / ^ [\ u3000- \ u303F \ u3040- \ u309F \ u30A0- \ u30FF \ uFF00- \ uFFEF \ u4E00- \ u9FAF \ u2605- \ u2606 \ u2190- \ u2195u203B] + $ / ig;
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
返回regex.test(text_val);
}
checkSpecificLanguage(“でしたコンサート”);
(7个答案)
5年前关闭。
在浏览器控制台中,以下函数的输出是一系列交替的true和false。任何的想法?
函数checkSpecificLanguage(text_val){
//强制输入字符串类型在此处输入代码
var regex = / ^ [\ u3000- \ u303F \ u3040- \ u309F \ u30A0- \ u30FF \ uFF00- \ uFFEF \ u4E00- \ u9FAF \ u2605- \ u2606 \ u2190- \ u2195u203B] + $ / ig;
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
console.log(text_val +“-” + regex.test(text_val));
返回regex.test(text_val);
}
checkSpecificLanguage(“でしたコンサート”);
最佳答案
您正在使用全局(g
)标志。
根据MDN:
您可以通过设置lastIndex
来解决此问题。