3. 我們還可以先定義變量,然后在模版字符串中嵌入變量:
var name="zzw"; ` ${name},no matter what you do, I trust you.`
4.顯然,由于反引號(hào)是模版字符串的標(biāo)識(shí),如果我們需要在字符串中使用反引號(hào),我們就需要對(duì)其進(jìn)行轉(zhuǎn)義,如下所示:
`No matter\` what you do,
I trust you.`
5.注意:如果使用模版字符串表示多行字符串,所有的空格和縮進(jìn)都會(huì)被保存在輸出中!!
console.log( `No matter\` what you do, I trust you.`);
輸出結(jié)果如下:
6. 在${}中的大括號(hào)里可以放入任意的JavaScript表達(dá)式,還可以進(jìn)行運(yùn)算,以及引用對(duì)象屬性。
var x=88; var y=100; console.log(`x=${++x},y=${x+y}`);
結(jié)果如下所示:
7.更強(qiáng)大的是:模版字符串還可以調(diào)用函數(shù):
function string(){ return "zzw likes es6!"; } console.log(`你想說什么?嗯,${string()}`);
結(jié)果如下所示:
另外,如果函數(shù)的結(jié)果不是字符串,那么,將按照一般的規(guī)則轉(zhuǎn)化為字符串:
function string(){ return 666; } console.log(`你想說什么? 嗯,${string()}`);
結(jié)果如下所示:
在這里,實(shí)際上數(shù)字666被轉(zhuǎn)化成了字符串666.
8.如果在${}中的變量時(shí)沒有命名的,那么會(huì)報(bào)錯(cuò):
console.log(`你想說什么? 嗯,${string()}`);
在上面這句代碼中,string()函數(shù)沒有聲明,于是報(bào)錯(cuò):
9.其實(shí),我們還可以在${}中輸入一個(gè)字符串,知識(shí)結(jié)果仍舊會(huì)返回一個(gè)字符串:
console.log(`你想說什么?嗯,${"其實(shí)我不是變量~"}`);
結(jié)果如下所示:
10.如果希望引用模版字符串本身,可以像下面這樣寫:
let str="return"+"`Hello! ${name}`"; let func=new Function("name",str); console.log(func("zzw"));
結(jié)果如下:
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com