加g的時候是第一次點擊按鈕,返回true,再點擊按鈕,返回false,是為什麼?
不加 g的時候回傳的結果是正確的。
window.onload=function(){
var aInput=document.getElementsByTagName('input');
var re = /^1\d{10}$/;
//var re== /^1\d{10}$/g;
aInput[1].onclick=function(){
if(re.test(aInput[0].value)){
console.log('是电话号码');
}else{
console.log('不是电话号码');
}
}
}
http://blog.csdn.net/leolu007...
/g是全域匹配的意思,一般需要使用正則表達式替換所有匹配處的時候才用這個參數.
然而!
你的正則加上/g也是可以正確匹配以1開頭的11位數字的,為什麼會false的原因我想應該是你的程式碼裡面多了一個等號..........
使用控制台執行這行JS: