在 ES6 中宙彪,Iterator 也被添加給了字符串憔披,這樣代表字符串可以使用 for of
循環(huán)了等限。
for (let code of 'foo') {
console.log(code);
}
// "f"
// "o"
// "o"
字符串查找類
接下來(lái)介紹一些可以通過 ES5 PolyFill的方法,但是現(xiàn)在 ES6 原生實(shí)現(xiàn)了
|Method|Param|Return|Description|
|---|---|---|
|includes()|需要驗(yàn)證是否被包含的字符串|Boolean|表示是否調(diào)用此方法的字符串是否包含參數(shù)中的字符串|
|startsWith()|需要被驗(yàn)證的字符串|Boolean|表示調(diào)用此方法的字符串的開頭部分是否就是參數(shù)|
|endsWith()|需要驗(yàn)證的字符串|Boolean|與 startsWith
類似芬膝,不同點(diǎn)此方法為結(jié)尾|
下面看一下例子:
let name = 'hello,this is Hao!';
name.startsWith('hello');
// true
name.endsWith('!');
// true
name.includes('this');
// true
這三個(gè)方法很實(shí)用望门,也比較簡(jiǎn)單,他們同樣都接受第二個(gè)參數(shù)锰霜,表示從某個(gè)索引開始
'11112222'.startsWith('2',4)
true
字符串重復(fù)
|Method|Param|Return|Description|
|---|---|---|
|repeat()|需要被重復(fù)的次數(shù)|重復(fù)后的新字符串|將調(diào)用此方法的字符串重復(fù)n次|
使用這個(gè)方法需要注意筹误,如果使用小數(shù),會(huì)先被取整癣缅,2.9(2)
厨剪。
最重要的哄酝,模板字符串
模板字符串,指的是增強(qiáng)版的字符串祷膳,使用 `
來(lái)進(jìn)行標(biāo)識(shí)陶衅,它包含普通字符串的使用方法,同時(shí)還支持嵌入變量到字符串中,多行字符串直晨。
所謂多行字符串万哪,就是說所有空格和縮進(jìn)都會(huì)被保存,嵌入變量則指使用 ${x}
這樣的方式來(lái)拼接字符串和變量抡秆,下面看例子:
let name = "hao
big small
";
console.log(name);
//會(huì)保持縮進(jìn)和空格
"hao
big small
"
let obj = {a: 'xiang'};
let a = `hao${obj.a}`;
console.log(a);
// haoxiang
模板字符串本質(zhì)上就是在 ${x}
內(nèi)部執(zhí)行 JS 代碼奕巍,所以如果是一個(gè)函數(shù),也會(huì)被執(zhí)行
function fn() {
return "Hello World";
}
`foo ${fn()} bar`
// foo Hello World bar
基本的語(yǔ)法就寫到這了儒士。