第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

javascript的正則表達式的問題

javascript的正則表達式的問題

12345678_0001 2018-10-05 10:15:24
var msg=/[a-z]+/gundefinedmsg.test('dfdfdf')truemsg.test('dfdfdf')falsemsg.test('dfdfdf')true問什么一時返回真一時返回假呢
查看完整描述

1 回答

?
繁星coding

TA貢獻1797條經(jīng)驗 獲得超4個贊

因為題主多次測試都是使用同一個字符串字面量'dfdfdf'
而在JavaScript中, 正則表達式的g標志有記錄lastIndex的功能1
所以第一次test記錄了lastIndex'dfdfdf'字符串的末尾, 導致第二次test的結(jié)果為false
并且第二次test由于遍歷了'dfdfdf'字符串的末尾(也就是完整地遍歷了整個字符串對象里面的內(nèi)容), 
所以lastIndex指針又重新指向了字符串開頭, 然后重新循環(huán).

所以問題中的測試會是以truefalsetruefalse的結(jié)果交替出現(xiàn), 如下所示:

https://img1.sycdn.imooc.com//5be290b6000176b001450230.jpg

  1. MDN-JavaScript 正則表達式 ?


查看完整回答
反對 回復 2018-11-07
  • 1 回答
  • 0 關(guān)注
  • 513 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號