es6新增-字符串部分

字符串的扩展

1.es6新增模板字符串 反引号- ``

es6之前字符串缺点

新增反引号优点:

2.es6新增字符串实例方法:

静态方法(非实例方法):

字符串的实例方法:


字符串的扩展

1.es6新增模板字符串 反引号- ``

es6之前字符串缺点

在es6之前声明字符串都是使用单引或双引号,单双引号字符号的缺点:

(1)不能随便换行    (2)+号拼接繁琐

新增反引号优点:


(1)用一对反引号声明: ` hello ` ; 反引号声明类型也为字符串类型

(2)嵌入变量: 内部可以任意嵌入表达式,语法: ${ 表达式 }

2.es6新增字符串实例方法:

静态方法(非实例方法):

构造函数名.方法(参数) String.fromCharCode(10)

字符串的实例方法:

对象/实力.方法(参数) " aa ".split(" bb ")

注意:字符串的所有实例方法都不改变原字符串,字符串是只读的

(1)repeat(number) : 把字符串重复指定的次数返回,小数取整,负数报错 str.repeat(2)

(2)startsWith(str,[startIndex = 0]) :判断字符串是否以某个字符串开头,是返回true;否,返回false

(3)endsWith(str,[endIndex = str.length - 1]) :判断字符串是否以某个字符串结尾,可选参数为下标

(4)includes(str,[startIndex = 0]) : 判断字符串是否包含某个字符串,包含返回true,不包含返回false

可以取代indexOf方法,includes更语义化

(5)padStart(length,str) : 字符串头部填充,返回填充后的字符串,但不会改变原字符串

(6)padEnd(length,str) : 字符串尾部填充,

length表示填充后的总长度,length < str.length时,不会做任何填充,返回原字符串

(7)trimStart() : 去除字符串的头部空格,返回去完空格的字符串

(8)trimEnd() : 去除字符串的尾部空格 

trim() : 去除字符串的首尾空格

(9)repalceAll(searchValue | searchPattern,replacement):字符串全局替换

repalce():只会替换掉第一个搜索到的结果

不同情况使用:

(1)两个参数都是字符串:console.log(str.replace("a","b")) console.log(str.replaceAll("a","b"))

(2)第一个参数是正则,第二个参数是字符串: console.log(str.replace(/a/g,"b")) //相当于全局替换

console.log(str.replaceAll(/a/g,"b")) //replaceAll正则没有/g会报错

(3)第一个参数是正则,第二个参数为回调:

const str = "ccbbaa" ;

const ret = str.replace(/a/g,function(matchStr,index,str){

console.log(mathStr,index,str); 

return " bb "        })  //输出: "a" 5 "ccbbaa" ; "a" 6 "ccbbaa" //打印两次

console.log(ret)

回调函数参数: 第一个: 符合正则规则的字符串; 第二个: 在原字符中的下标; 第三个: 原字符本身

字符串中,空格也一占位!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值