校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 看到一個JS正則的題

看到一個JS正則的題

熱門標簽:外呼系統api對接 銷售電銷機器人詐騙 大學校門地圖標注 荊州智能電銷機器人 福建微碼電話機器人 提高電話機器人接通率 地圖標注與公司業務關系 廣西智能外呼系統多少錢 平涼高德地圖標注商戶要收費嗎
貼出來與大家共勉。

先看一段代碼,
script>
var objReg = /^[a-zA-Z]{1}(:){1}$/gi;
alert(objReg.test("a:"));//返回true
alert(objReg.test("a:"));//返回false
/script>

為什么第二個test會返回false?是不是覺得奇怪。
原因我解答如下:
test實際上與exec方法的執行方法是一致的,只是返回值不一樣。test返回的是true or false(如果exec返回的不是null),exec返回的是pattern(匹配)。
而exec的執行過程為:帶有g參數時,下次匹配時,自動會跳到lastIndex后的位置,也就是這里的第2個位置。而這個位置與pattern顯然不匹配。因此返回false。

解決方法:
(1)
可以不使用g(全局參數)也就是這樣-
script>
var objReg = /^[a-zA-Z]{1}(:){1}$/i;
alert(objReg.test("a:"));//返回true
alert(objReg.test("a:"));//返回true
/script>

(2)
可以用lastIndex=0來還原-
var objReg = /^[a-zA-Z]{1}(:){1}$/gi;
alert(objReg.test("a:"));//返回true
objReg.lastIndex=0;
alert(objReg.test("a:"));//返回true

標簽:內江 樂山 婁底 海南 邯鄲 衡陽 德陽 黔東

巨人網絡通訊聲明:本文標題《看到一個JS正則的題》,本文關鍵詞  看到,一個,正則,的,題,看到,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《看到一個JS正則的題》相關的同類信息!
  • 本頁收集關于看到一個JS正則的題的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 昌吉市| 商丘市| 桦川县| 青铜峡市| 拉萨市| 金华市| 潞西市| 广州市| 诸暨市| 巧家县| 广元市| 锦屏县| 方城县| 乳源| 三亚市| 井冈山市| 西丰县| 青铜峡市| 广昌县| 龙海市| 东山县| 札达县| 驻马店市| 南昌市| 屏南县| 连山| 曲周县| 西峡县| 康马县| 铜陵市| 芦溪县| 凉城县| 綦江县| 翁牛特旗| 白沙| 咸丰县| 茌平县| 枝江市| 龙山县| 哈巴河县| 莎车县|