ES6学习(三)---- 字符串的扩展

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29329037/article/details/79646668

我只总结一些常用的。涉及到字节方面的方法暂时不作记录。

1.startsWith 和endsWith、includes,其中他们都有两个参数,第一参数是包含的字符串,第二个参数是个n数字,includes和startsWith的第二个参数表示是从这个索引开始,endsWith的索引是从0-n。
let str = 'abc';
str.startsWith('a');//true
str.endsWith('c');//true
str.includes('a');//true
//有第二个参数的情况
let str = 'abcdefg';
str.starstWith('a',3);//false从第三个开始
str.endsWith('d',3);//false前三个
str.includes('g',4);//true从第四个开始

2.repeat复制字符串。

repeat里面的参数是数字,里面的参数会先转换成数字。返回值是复制后的字符串
需要注意的有一下几点:
(1)参数是正常正整数的情况。如果是小数它会去掉小数点后面的。

'ab'.repeat(2);//'abab'
'aab'.repeat(2.5);//'aabaab'

(2)参数是负数或者Infinity会报错。

'ab'.repeat(-1);//报错

(3)参数如果是-1和0之间的数字。repeat会把数字当成0来处理

'ab'.repeat('-0.5');//''

(4)参数如果是NaN.也会被当成0来处理

'ab'.repeat('abc');//''
'ab'.repeat(NaN);//''
3.padStart和padEnd首尾填充

其中它们都有两个参数,padStart(minLength,str),参数一最小长度,参数二我们填充的字符串
(1)正常的情况下

'x'.padStart(3,'ab');//'abx'
'x'.padEnd(3,'ab');//'xab'
'x'.padStart(3,'a');//'aax'

(2)如果填充的字符串长度与原先的字符串长度之和大于最小长度,那么填充的时候就会从填充的字符串中截取一部分。

'abc'.padStart(5,'efghij');//'abcef'

(3)如果最小长度小于原字符串的长度,那么就返回原来的字符串

'abc'.padStart(2,'efgfsf');//abc

(4)如果填充的字符串这个参数没写,就会以空格来填充,填充规则符合前三点

'abc'.padStart(5);//'  abc'
4.模版字符串

一般的用“来包裹字符串,其中用${}来写变量、表达式、调用的函数。如果用模版字符串包裹,所有的空格和换行都会保留下来。

const str = 
`
<ul class="list">
    <li>365天年卡</li>
    <li>90天际卡</li>
    <li>体验领取<span class="spe">3件</span> 0元/1元商品</li>
</ul>
`;
5.标签模版暂时还没有理解明白,后期继续写

6.String.raw返回替换变量之后和一个斜杠被转义后的字符串

let a = 5;
let b = 15;
String.raw`name${a+b}\`;// 'name20\\'

猜你喜欢

转载自blog.csdn.net/qq_29329037/article/details/79646668
今日推荐