最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談regExp的test方法取得的值變化的原因及處理方法

 更新時間:2017年03月01日 09:23:17   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談regExp的test方法取得的值變化的原因及處理方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1、JavaScript 正則表達式對象RegExp的test方法,用于檢測一個字符串是否匹配某個模式。

字面量定義RegExp對象:var re = /pattern/attributes,其中attributes可以是g,i,m;

閱讀以下程序:

<script type="text/javascript"> 
var str = 'abc123'; 
var re = /^abc/g ;
var result1 = re.test(str); 
var result2 = re.test(str); 
var result3 = re.test(str); 
document.write('result1:' + result1 + '<br/>'); 
document.write('result2:' + result2 + '<br/>'); 
document.write('result3:' + result3); 
</script>

我們會認為打印結(jié)果應該是true;true;true;

而實際情況卻是true;false;true;

2、為什么第二個結(jié)果是false?

發(fā)現(xiàn)RegExp對象有一個lastIndex的屬性,如果使用了全局修飾符,那么執(zhí)行test方法后,lastIndex就會記錄匹配的字符串在原始字 符串中最后一位的索引加一,例如執(zhí)行了var result1 = re.test(str)后lastIndex為3(document.write('re.lastindex:' + re.lastIndex+ '<br/>');),如果沒有發(fā)現(xiàn)匹配lastIndex置為0。當下次再執(zhí)行時,對給定的字符串匹配不是從開頭位置,而是要依據(jù)lastIndex提供的位置,由于這個原因,所以導致上例中result2的值為false。

3、處理方法:去除g;

即:var re = /^abc/g ;變?yōu)?var re = /^abc/;

以上這篇淺談regExp的test方法取得的值變化的原因及處理方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談如何循序漸進的學好JS

    淺談如何循序漸進的學好JS

    如何才能學好JS?在這里給大家總結(jié)一些學習Js的經(jīng)驗,希望能對你們有所幫助。
    2021-05-05
  • 原生JS實現(xiàn)飛機大戰(zhàn)小游戲

    原生JS實現(xiàn)飛機大戰(zhàn)小游戲

    這篇文章主要為大家詳細介紹了原生JS實現(xiàn)飛機大戰(zhàn)小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • javascript常用函數(shù)歸納整理

    javascript常用函數(shù)歸納整理

    這篇文章主要介紹了javascript常用函數(shù),歸納整理了一些常用的函數(shù)便于大家查詢參考,需要的朋友可以參考下
    2014-10-10
  • js中arguments對象的深入理解

    js中arguments對象的深入理解

    這篇文章主要給大家介紹了關(guān)于js中arguments對象的深入理解,文中通過示例代碼介紹的非常詳細,對大家學習或者使用javascript具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • JS中頁面列表加載的常用方法總結(jié)

    JS中頁面列表加載的常用方法總結(jié)

    在日常前端開發(fā)過程中,常用到頁面列表加載。這篇文章主要為大家介紹三種常用方法,分別是分頁加載、按鈕加載以及滾動加載,需要的可以參考一下
    2022-09-09
  • echarts餅圖labelLine線的長度自適應設(shè)置

    echarts餅圖labelLine線的長度自適應設(shè)置

    這篇文章主要給大家介紹了關(guān)于echarts餅圖labelLine線的長度自適應設(shè)置的相關(guān)資料,在echarts中,餅圖的標簽線可以通過設(shè)置 labelLine屬性來自定義位置,需要的朋友可以參考下
    2023-08-08
  • JavaScript中V8引擎的垃圾回收機制詳解

    JavaScript中V8引擎的垃圾回收機制詳解

    V8是Google開發(fā)的JavaScript引擎,采用分代垃圾回收機制自動管理內(nèi)存,包括新生代和老生代,新生代使用Scavenge算法快速回收短生命周期對象,老生代使用標記-清除和標記-整理算法優(yōu)化長期存活對象的回收,V8通過增量標記、并發(fā)GC和增量壓縮等優(yōu)化策略減少垃圾回收對性能的影響
    2025-02-02
  • JS獲取URL中參數(shù)值(QueryString)的4種方法分享

    JS獲取URL中參數(shù)值(QueryString)的4種方法分享

    今天碰到要在一個頁面獲取另外一個頁面url傳過來的參數(shù),一開始很本能的想到了用 split("?")這樣一步步的分解出需要的參數(shù)。后來想了一下,肯定會有更加簡單的方法的!所以在網(wǎng)上找到了幾個很又簡單實用的方法,mark下。
    2014-04-04
  • javascript父子頁面通訊實例詳解

    javascript父子頁面通訊實例詳解

    這篇文章主要介紹了javascript父子頁面通訊的實現(xiàn)方法,實例分析了javascript針對父子頁面通訊的原理與相關(guān)實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 微信小程序?qū)崿F(xiàn)錨點跳轉(zhuǎn)

    微信小程序?qū)崿F(xiàn)錨點跳轉(zhuǎn)

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)錨點跳轉(zhuǎn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11

最新評論

永州市| 大连市| 新兴县| 织金县| 永登县| 集安市| 常德市| 玛纳斯县| 柳江县| 和硕县| 冀州市| 平阳县| 古蔺县| 高州市| 华蓥市| 会东县| 辽阳市| 锡林郭勒盟| 大田县| 抚顺县| 海原县| 安顺市| 项城市| 阳新县| 会昌县| 巨鹿县| 云南省| 浠水县| 五大连池市| 浦江县| 荥经县| 察雅县| 博白县| 彭泽县| 黄骅市| 罗田县| 游戏| 雅江县| 绥中县| 芜湖市| 静宁县|