ES6——字符串扩展
来源:互联网 发布:wind软件 编辑:程序博客网 时间:2024/05/22 02:11
字符串新增方法
includes——是否包含
let str = 'string';console.log(str.includes('r')); // true
startsWith——是否以xxx开头
let str = 'string';console.log(str.startsWith('str')); // true
endsWith——是否以xxx结尾
let str = 'string';console.log(str.endsWith('str')); // true
repeat——重复
let str = 'happy';console.log(str.repeat(2)); // happyhappy
String.raw——不换行
console.log(String.raw`Hi\n World`)); // Hi\n World
其实就是不识别换行符。
模版字符串
使用$符号,把变量插入到字符串。
let name = 'Tim Chen' ;let info = 'cool man' ;let me = `I am ${name} and I'm a ${info}` ;console.log(me); // I am Tim Chen and I'm a cool man
Unicode相关
unicode表示法
当unicode字符大于2个字节的时候,我们可以使用花括号包起来。
console.log('two',`\u{20bb7}`);
codePoint(取unicode码值)
es5中,可以使用charCodeAt去匹配到字符的unicode码值。
但是如果该字符,超过2个字节,变成了4个字节,charCodeAt的值就会有2个。charCodeAt(0)和charCodeAt(1)。
而在es6中,利用codePointAt去匹配字符,哪怕该字符是4个字节的,
charCodeAt(0)依旧会把该字符完整的unicode码值(1-4字节)匹配到,
而此时charCodeAt(1)依旧会匹配到该字符的3、4字节。
fromCodePoint方法(取字符)
es5中有fromCharCode,
它们之间的不同在于是否能识别大于2个字节的字符。
let of遍历器
let str = '\u{20bb7}abc';es5for(var i = 0; i < str.length; i++){ console.log('es5',str[i]);}es6使用遍历器for(let code of str){ console.log('es6',code);}
es5的方法,虽然也能遍历,但是由于该字符大于2个字节,所以有乱码。
es6使用遍历器,则能正确识别出来。
es2017方法
使用以下方法,需要安装babel-polyfill。
padStart——向前补全
语法
字符串.padStart(长度,'补全用字符')
实例
console.log('1'.padStart(2,'0')); // 01
padEnd——向后补全
实例
console.log('1'.padEnd(2,'0')); // 10
阅读全文
0 0
- ES6——字符串扩展
- ES6 —(字符串扩展)
- ES6 — 对象扩展
- 【ES6】字符串的扩展
- ES6-字符串扩展
- 03、ES6 字符串扩展
- 【es6】字符串的扩展
- ES6字符串扩展
- ES6字符串扩展
- ES6字符串扩展
- ES6--字符串的扩展
- es6语法-字符串扩展
- ES6 字符串扩展
- ES6-字符串扩展-Unicode
- ES6-字符串扩展-repeat()
- es6字符串的扩展
- ES6-字符串扩展-模板字符串
- ES6——正则扩展
- VirtualBox虚拟机下kali映射USB无线网卡无法启用问题解决
- String对象具备的一些基本方法
- codeforces 632C (练习Java排序)
- c++ 合并两个数组
- Docker部署Sentry+Django(无法收到告警邮件解决)
- ES6——字符串扩展
- Jzoj3518 进化序列
- 35 个 Java 代码性能优化总结
- Tensorflow应用实例(一)
- 机房模拟赛 2017年9月26日 数据结构
- SpringCloud(第 021 篇)Zuul 的过滤器 ZuulFilter 的使用
- 用堆栈实现二进制的转化
- 指针数组和数组指针之个人见解
- maven jdk1.8版本报错