es6 语法 (正则扩展)】的更多相关文章

es6对于正则表达式添加了 u 修饰符和 y 修饰符. u 修饰符:含义为“Unicode模式”,用来正确处理大于\uFFFF的Unicode字符.    该修饰符不光会正确处理正则表达式,还会正确处理被匹配的字符串.    利用新增的正则实例对象属性 unicode ,可以判断正则表达式是否设置了u修饰符.(reg.unicode) y 修饰符:叫做 “粘连”(sticky)修饰符.用来正确处理匹配粘连的字符串.    它的作用和g修饰类似,也是全局匹配.    它可以使用新增的正则对象属性s…
ES6中正则的扩展 正则新增特性 一.构造函数的变化 1.ES5中new一个正则对象方法 (一行中2个参数,二行中1个参数) (第一行中的第一个参数必须是字符串) 2.ES6中新增一种方法(构造函数) (输出:i ) 第二个修饰符会覆盖第一个修饰符,flags是新增用来获取正则对象修饰符的属性. 二.y修饰符 2-1.描述 第一步都可以匹配到bbb,第二步g修饰符可以匹配到,y修饰符匹配不到. g修饰符和y修饰符都是全局匹配,但g修饰符是在上次匹配位置继续寻找,直到找到匹配位置开始,不强调是在匹…
//正则扩展 { let regex=new RegExp('xyz','i'); let regex2=new RegExp(/xyz/i); console.log(regex.test('xyz123'),regex2.test('xy')); //后面的修饰符i覆盖原来的ig修饰符 let regex3=new RegExp(/xyz/ig,'i'); console.log(regex3.flags); } { let s='bbb_bb_b'; //g,y都是全局匹配 let a1=…
//下面三行代码效果一样 //全局匹配开头为a的 const regexp1 = /^a/g; const regexp2 = new RegExp('a','g'); const regexp3 = new RegExp(/^a/); const regexp4 = new RegExp(/a/); console.log('aabbcc'.match(regexp1)); //['a'] console.log('bbaacc'.match(regexp1)); //null console…
1.RegExp构造函数 在ES5中,RegExp构造函数的参数有两种情况.第一种情况是参数是字符串,这时第二个参数表示正则表达式的修饰符:第二种情况是,参数是一个正则表示式,这时会返回一个原有正则表达式的拷贝.但是,ES5不允许此时使用第二个参数,添加修饰符,否则会报错 var regex = new RegExp('xyz','i'); //等价于 var regex = /xyz/i; var regex = new RegExp(/xyz/i); //等价于 var regex = /x…
一.数组的复制 // alert([1,2,3]==[1,2,3]); let cc = [0,1,2]; let dd = cc; alert(dd==cc);//此时改变dd会影响cc ES5 只能用变通方法来复制数组. const a1 = [1, 2]; const a2 = a1.concat(); a2[0] = 2; a1 // [1, 2] //使用ES6语法会防止这种现象出现 const a1 = [1, 2]; // 写法一 const a2 = [...a1]; // 写法…
ES6是JavaScript语言的新一代标准,是ECMAScript的第六个版本,加入了很多新的功能和语法,在很多框架,如在使用Vue,React等框架的项目中一般都采用ES6语法来编写的,下面对经常用到的ES6语法做简要的介绍. 1.let,const let和const是ES6中新增的两个关键字,用来生命变量,let和const都是块级作用域.let声明的变量只在let命令所在的代码块内有效.const声明一个只读变量,一旦声明,常量的值就不可更改.与var声明的变量不同,var声明的是函数…
let/const(常用) let,const用于声明变量,用来替代老语法的var关键字,与var不同的是,let/const会创建一个块级作用域(通俗讲就是一个花括号内是一个新的作用域) 这里外部的console.log(x)拿不到前面2个块级作用域声明的let: { let s =0; } { let s =2; } console.log(s) //Uncaught ReferenceError: s is not defined 在日常开发中多存在于使用if/for关键字结合let/co…
ES6 就是ECMAScript 6是新版本JavaScript语言的标准.虽然目前已经更新到ES7,但是很多浏览器还不知处ES7语法,该标准仍在更新中,但目前部门网站都指出ES6的语法.目前ES6也是使用最多的最新的javaScript语言标准.要查看ES6的支持情况请点此. 在2009年ES5问世以后,javaScript的标准就一直没有更新.从那时起ES标准委员会就已经开始筹划新的ES标准,在2015年发布了ES6.ES6是ECMAScript 的第6个版本. 经过持续几年的磨砺,它已成为…