ES6字符串和正则表达式改动
1. ES6字符串变更
(1)includes() 方法,如果在字符串中检测到指定文本返回true,否则返回false
(2)startsWith()方法,如果在字符串的起始部分检测到文本,则返回true,否则返回false
(3)endsWith()方法,如果在字符串的结束部分检测到文本,则返回true,否则返回false
以上方法都接收两个参数,一个是要检测的文本,第二个参数是可选的,也即检索开始的位置,在第三个方法中,从字符串长度减去这个索引值的位置开始匹配
(4)repeat()方法,接收一个number类型参数,表示该字符串重复次数
"x".repeat(3) // 'xxx' " ".repeat(4) // 4个空格 控制缩进
codePointAt(),String.fromCodePoint() ,normalize() 标准化 针对32位编码单元的方法
2. 正则表达式
(1) u修饰符 从编码单元模式切换为字符模式, 不会把32位编码单元(代理对)视为两个字符
(2) y修饰符 在字符串开始匹配字符时,通知搜索从正则表达式的lastIndex属性开始进行,如果在指定位置没能匹配成功,则停止匹配
只有调用exec() 和 text() 这些正则表达式对象的方法才会有lastIndex 属性, 调用字符串的方法(match) 不会触发粘滞行为
(3)正则表达式的复制
ES5中, var re1 = /ab/i,
re2 = new RegExp(re1);
re2是re1的一份拷贝
re2 = new RegExp(re1,'g'); // 在ES5中抛出错误,在ES6中正常运行
(4)flags 属性
ES5中可以通过source属性获取正则表达式的文本,ES6中新增flags属性来获取修饰符
let re = /ab/g;
re.source // "ab"
re.flags // "g"
getFlags(re) // "g"
最新文章
- AngularJS中get请求URL出现跨域问题
- .NET跨平台之旅:探秘 dotnet run 如何运行 .NET Core 应用程序
- 图解jmeter压测http接口
- quartz TRIGGER_STATE变为ERROR解决方法
- Read N Characters Given Read4 I &; II
- hibernate执行session.createQuery(hql)时hql若有参数则报错
- MySQL [Warning] Can’t create test file xxx lower-test(转)
- 转:Java HashMap实现详解
- 【转】C#注册快捷键
- [算法导论]贪心算法(greedy algorithm)
- [Ext JS 4] Extjs 它 initComponent 和 constructor差分
- 伪教练技术培训之殇-2013年9月江西IDC拓行榜与综述
- Play初识
- easyui控件写法造成的错误
- 纯干货!耗时1个月整理黑马程序员Java教程+笔记+配套工具
- Android 基础知识
- Activity的生命周期函数
- linux下安装oh-my-zsh
- Java9 新特性
- 【QT】QPixmap和QImage在QLabel显示一张图像
热门文章
- xxl系列部署启动通用办法
- adb devices unauthorized解决办法
- 【BZOJ】3022: [Balkan2012]The Best Teams
- CentOS7下Django环境的搭建安装python3.6.5,virtualenv django1.11.14
- BZOJ3926 [Zjoi2015]诸神眷顾的幻想乡 字符串 SAM
- Codeforces 873E Awards For Contestants ST表
- 自动驾驶系统 bfs
- Noj - 在线强化训练2
- 设计模式之单例模式及应用demo
- html-定位