ES6 之 字符串扩展
Posted houfee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 之 字符串扩展相关的知识,希望对你有一定的参考价值。
将一个值转化为字符串,.toString()方法,但是null和undefined值没有这个方法,
1、字符的Unicode(“uxxxx”)表示法
xxxx —— 表示Unicode的码点,但是这种码点在u0000~uFFFF之间的字符。超出这个范围额字符,必须用2个双字节的形式表示。
如果直接在u后面跟上超出范围的值,如u20BB7,js会理解成u20BB + 7,由于u20BB是一个不可打印字符,所以只会显示一个空格,后面跟一个7。
console.log("uD842uDFB7") // ??
console.log("u20BB7") // ?7 console.log("u{20BB7}") // ??
ES6对这一点做出了改进,只要将码点放入大括号,就能正确解读改字符串了。如上
JS内部,字符换是以UTF-16的格式存储的,每一个字符固定为2个字节。
// 拼接 字符串.concat(str1,str2,str3...) 拼接符 + //推荐使用 // 截取 字符串.slice(start,end) // 前包后不包
// slice() substring() substr() 第一个参数是开始位置,
// slice() substring() 第二个参数是结束位置
// substr() 第二个参数是 返回的长度
let str = abcdefg
console.log(str.slice(2,4)); // cd
console.log(str.substring(2,4)); // cd
console.log(str.substr(2,4)); // cdef
查询字符是否在字符串中存在
字符串.indexOf(); // 返回索引或-1
字符串.lastIndexOf();
去除空白符
字符串.trim(); // 去除字符串两边的空格
字母字符大小写转换
字符串.toUpperCase(); // 转换大写 重点 字符串.toLowerCase(); // 转换小写 重点
字符串替换
字符串.replace(oldStr,newStr);
字符串分割
字符串.split(sp); // 把一个字符串分割成字符串数组。
3、ES6 之 字符串
let str = ‘abcdefg‘
1、for···of···字符串的遍历器接口
// for···of···字符串的遍历器接口 for( let codePoint of str) { console.log(codePoint) // 返回字符串的每一个字符 console.log(typeof codePoint) // string }
includes() 、startsWith()、 endsWith() 返回的都是boolean值
// includes() startsWith() endsWith() 返回的都是boolean值 // includes() 表示是否能找到参数 // startsWith() 表示参数字符串是否在源字符串开始 // endsWith() 表示参数字符串是否在源字符串结尾 console.log(str.includes(‘cd‘)) // true console.log(str.startsWith(‘ab‘)) // true console.log(str.endsWith(‘fg‘)) // true
repeat() 将源字符串复制一遍,返回新的字符串
// 参数是小数 会被取整,0返回空,Infinity或负数会报错,NaN等同于0 console.log(str.repeat(3)) // abcdefgabcdefgabcdefg
padStart() 、padEnd() 字符串补全
// 如果某个字符串不够指定长度,会在头部或尾部补全长度 console.log(str.padStart(10,‘0‘)) // 000abcdefg console.log(str.padEnd(10,‘0‘)) // abcdefg000
以上是关于ES6 之 字符串扩展的主要内容,如果未能解决你的问题,请参考以下文章