我是靠谱客的博主 虚拟短靴,最近开发中收集的这篇文章主要介绍ES6——字符串扩展,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

字符串新增方法


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`Hin World`));
// Hin 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';
es5
for(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

最后

以上就是虚拟短靴为你收集整理的ES6——字符串扩展的全部内容,希望文章能够帮你解决ES6——字符串扩展所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(98)

评论列表共有 0 条评论

立即
投稿
返回
顶部