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

ES6正則表達式的一些新功能總結

 更新時間:2017年05月09日 09:56:53   作者:sexy_squirrel  
這篇文章主要總結了一些關于ES6正則表達式的新功能的相關資料,文中介紹的還是比較詳細,對大家具有一定的參考學習價值,需要的朋友們下來要起看看吧。

本文主要總結了ES6正則表達式的一些新功能,分享出來供大家參考學習,下面來看看詳細的介紹:

一、構造函數(shù)實例化參數(shù)的變化

大家都知道,在ES5中,new RegExp(參數(shù)1,參數(shù)2),參數(shù)1若是指定了正則修飾符,則參數(shù)2就不應該出現(xiàn),否則將會報錯,在ES6中,第二個參數(shù)的正則修飾符會覆蓋掉原有的修飾符:

<script>
//在ES5中,下面的正則自帶修飾符ig,則第二個參數(shù)不能出現(xiàn)
var reg = new RegExp(/asd/ig);
//在ES6中,如下:
var reg = new RegExp(/asd/ig,'i');
//i會覆蓋掉原來的ig
</script>

二、u修飾符

u修飾符可以自動識別碼點大于0xFFFF的編碼。只是ES6的新增內(nèi)容!

<script>
/\uD83D/u.test("\uD83D\uDC2A");
//在ES6中會返回false,u修飾符默認處理的UTF-16編碼
/\uD83D/.test("\uD83D\uDC2A");
//在ES5中會將test的的參數(shù)拆分成兩個字符,返回true
</script>

另外使用u修飾符需要注意一下幾點:

1. “.”字符

在正則表達式中,.字符的含義是除了換行符以外的所有字符,如要.字符匹配碼點大于\uFFFF的字符,必須帶u修飾符,否則不能正常識別;

<svcipt>
var s = "��";
//在ES5中
/^.$/.test(s)//false
//在ES6中
/^.$/u.test(s)//true
</script>

2.Unicode字符表示法

ES6中新增使用了大括號表示Unicode字符,這種方法在正則表達式中必須加上u修飾符才能識別。

<svcipt>
//在ES5中,61會被當做量詞使用
/\u{61}/.test("a")//false
//在ES6中
/\u{61}/u.test("a")//true
</script>

3.預定義模式

u修飾符也影響到預定義模式,加了u修飾符,才能正確識別碼點大于0xFFFF的Unicode字符。

4.對i修飾符的影響

有些Unicode編碼的字符比較接近,比如大寫的K的編碼有\(zhòng)u004B和\u212A,

<svcipt>
//未添加u修飾
/[a-z]/.test("\u212A")//false
//添加u修飾
/[a-z]/iu.test("\u212A")//true
</script>

三、y修飾符

ES6還新增了一個y修飾符,與通常的g修飾符用法類似,都是用來全局匹配,不同的是y修飾符又叫做“粘連”修飾符,在上一次匹配成功的下一個位置開始匹配,但是下一次開始位置必須要能夠滿足匹配,也就是匹配從剩余的第一個位置開始,這就是“粘連”的含義(個人理解)吧。

舉個例子吧!

<svcipt>
var s = qqqq_q_qq;
var r1 = /q+/g;
var r2 = /q+/y
//第一次匹配
r1.exec(s)//["qqqq"]
r2.exec(s)//["qqqq"]
//第二次匹配
r1.exec(s)//["qqq"]
r2.exec(s)//null
</script>

注意:y修飾符隱含了頭部匹配的標志^

/a/.exec("bdab");//null
/a/.exec("abbd");//["a"]

開頭必須匹配上

四、新增屬性

1.sticky屬性

      判斷正則是否設置了y修飾符。

      返回布爾值。

2.flags屬性

      返回正則的修飾符

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • JavaScript保護密鑰的方法詳解

    JavaScript保護密鑰的方法詳解

    在前端js編程中,如果涉及到加密通信、加密算法,經(jīng)常會用到密鑰,但密鑰,很容易暴露,?暴露原因:js代碼透明,在瀏覽器中可以查看源碼,從中找到密鑰,所以本文給大家介紹了前端js中如何保護密鑰,需要的朋友可以參考下
    2024-10-10
  • bootstrap折疊調(diào)用collapse()后data-parent不生效的快速解決辦法

    bootstrap折疊調(diào)用collapse()后data-parent不生效的快速解決辦法

    今天做的項目,用到了bootstrap的折疊功能,這個功能需要只展開一個折疊框,點擊一個就會自動隱藏另一個,實現(xiàn)起來也很容易,但是在測試時同事提出了一個bug,怎么解決呢?今天小編通過本教程給大家分享下
    2017-02-02
  • onkeydown事件解決按回車鍵直接提交數(shù)據(jù)的需求

    onkeydown事件解決按回車鍵直接提交數(shù)據(jù)的需求

    登陸頁面需要撲捉用戶按下回車自動提交的需求,于是相到在body里添加onkeydown事件跳javascript在提交表單,具體看下實現(xiàn)代碼,希望對你有所幫助
    2013-04-04
  • 淺析JSONP技術原理及實現(xiàn)

    淺析JSONP技術原理及實現(xiàn)

    這篇文章主要介紹了淺析JSONP技術原理及實現(xiàn) 的相關資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • 詳解JavaScript 的執(zhí)行機制

    詳解JavaScript 的執(zhí)行機制

    這篇文章主要介紹了JavaScript 的執(zhí)行機制,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下
    2020-09-09
  • JS實現(xiàn)圖片預加載無需等待

    JS實現(xiàn)圖片預加載無需等待

    網(wǎng)站開發(fā)時經(jīng)常需要在某個頁面需要實現(xiàn)對大量圖片的瀏覽;用javascript來實現(xiàn)一個圖片瀏覽器,讓用戶無需等待過長的時間就能看到其他圖片
    2012-12-12
  • js delete 用法(刪除對象屬性及變量)

    js delete 用法(刪除對象屬性及變量)

    js delete可以刪除對象屬性及變量,下面是一些示例,感興趣的朋友可以看看
    2014-08-08
  • TypeScript?使用?Tuple?Union?聲明函數(shù)重載

    TypeScript?使用?Tuple?Union?聲明函數(shù)重載

    這篇文章主要介紹了TypeScript?使用?Tuple?Union?聲明函數(shù)重載,TypeScript 中為函數(shù)添加多個簽名后,依然需要添加相應的代碼來判斷并從不同的簽名參數(shù)列表中獲取對應的參數(shù),下文就來探索方法和技巧吧
    2022-04-04
  • 仿百度輸入框智能提示的js代碼

    仿百度輸入框智能提示的js代碼

    這篇文章介紹了仿百度輸入框智能提示的js代碼,有需要的朋友可以參考一下
    2013-08-08
  • JS+CSS實現(xiàn)3D切割輪播圖

    JS+CSS實現(xiàn)3D切割輪播圖

    這篇文章主要為大家詳細介紹了JS+CSS實現(xiàn)3D切割輪播圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03

最新評論

南陵县| 从化市| 崇左市| 陆川县| 石阡县| 揭东县| 榆树市| 海丰县| 和顺县| 丹巴县| 罗城| 宣恩县| 渭南市| 滕州市| 永平县| 开化县| 绿春县| 景泰县| 天长市| 雅安市| 贡嘎县| 礼泉县| 乌拉特前旗| 镇雄县| 藁城市| 定西市| 苏尼特左旗| 奉节县| 临夏市| 内黄县| 沂水县| 故城县| 怀集县| 阿拉善盟| 莱芜市| 报价| 三台县| 福清市| 湟中县| 玉环县| 阿克苏市|