ES6字符串拓展方法

ES6加强了对unicode的支持

ES5中js允许采用/uXXXX的形式表示一个字符,XXXX表示字符的unicode码点。
这种码点只限于\uXXXX~\uFFFF之间的字符。超过这个范围,必须使用双字节的形式表示,但是ES5无法识别。
ES6中,将超过两个字节的组成的字符的码点放在一堆花括号里面就可以正确的识别。

示例

//ES6
const str1 = '`\u{20bb7}'
console.log('str1',str1)			//str1 吉
//ES6
const str2 = '`\u{20bb7}'
for(let i = 0;i<str1.length;i++){
	console.log('for',str1[i])		//for ?  for ?
}
for(let word of str1)
console.log('for of',str2)          // for of 吉

总结

for of 的应用范围比传统的for循环要广,在字符串中使用循环用for of

字符串扩展api

1.判断字符串是否包含指定字符串的几个方法

includes,startsWith,endsWith

let str = '123TO321'
console.log('includes',str.includes('TO'))	//includes true
console.log('startsWith',str.startsWith('TO',3))	//startsWith true
console.log('startsWith',str.startsWith('TO'))	//startsWith false
console.log('endsWith',str.endsWith('TO',5))	//endsWith true
console.log('endsWith',str.endsWith('TO'))	//endsWith false

2.字符串补全的方法

padStart,padEnd(length补全后的字符串长度,str用于补全的字符串)

let str = 'apple'
str = str.padStart(8,'111')
console.log('padStart',str)

3.模版字符串

const name = 'nick'
const age = 18
const str = "我叫'+name+',我今年'+age+'岁"
console.log('str-es5',str)				//str-es5 我叫nick,我今年18岁
const str2 = `我叫${name},我今年${age}岁`
console.log('str-es6',str2)				//str-es6 我叫nick,我今年18岁

总结
1)使用模版字符串表示多行字符串时,所有的空格和缩紧都会保留在输出之中。
2)模版中引入变量,要用${变量名}的形式引入。
3)模版字符串中大括号中的值不是字符串时,将按照一般的规则转为字符串。Eg:大括号中是一个对象,将默认调用对象的toString方法。
4)模版字符串中的${ }内部可以放入任意js表达式,可以进行运算,可以引用对象属性,可以调用函数,甚至还能嵌套调用自己本身。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值