ES6之模版字符串的具體使用
最近在項目中使用了ES6的模版字符串,在這里加以總結(jié)。
1.之前我們也可以使用JavaScript輸出模版字符串,通常是下面這樣的:
$("#result").append(
"He is <b>"+person.name+"</b>"+"and we wish to know his"+person.age+".That is all"
);
但是我們可以看到:這樣的傳統(tǒng)做法需要使用大量的“”(雙引號)和 + 來拼接才能得到我們需要的模版。但是這樣是十分不方便的。
于是ES6中提供了模版字符串,用`(反引號)標識,用${}將變量括起來。上面的例子可以用模版字符串寫成下面這樣:
$("#result").append(
`He is <b>${person.name}</b>and we wish to know his${person.age}.that is all`
);
這樣的做法就簡潔了很多,我們不需要再使用大量的""和+來拼接字符串和變量。
2. 當然,模版字符串可以引入變量,不使用變量也是可以的。如下所示:
` I am a man.`
` No matter what you do,
I trust you.`
3. 我們還可以先定義變量,然后在模版字符串中嵌入變量:
var name="zzw";
` ${name},no matter what you do,
I trust you.`
4.顯然,由于反引號是模版字符串的標識,如果我們需要在字符串中使用反引號,我們就需要對其進行轉(zhuǎn)義,如下所示:
`No matter\` what you do,
I trust you.`
5.注意:如果使用模版字符串表示多行字符串,所有的空格和縮進都會被保存在輸出中!!
console.log( `No matter\` what you do, I trust you.`);
輸出結(jié)果如下:

6. 在${}中的大括號里可以放入任意的JavaScript表達式,還可以進行運算,以及引用對象屬性。
var x=88;
var y=100;
console.log(`x=${++x},y=${x+y}`);
結(jié)果如下所示:

7.更強大的是:模版字符串還可以調(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ù)字666被轉(zhuǎn)化成了字符串666.
8.如果在${}中的變量時沒有命名的,那么會報錯:
console.log(`你想說什么? 嗯,${string()}`);
在上面這句代碼中,string()函數(shù)沒有聲明,于是報錯:

9.其實,我們還可以在${}中輸入一個字符串,知識結(jié)果仍舊會返回一個字符串:
console.log(`你想說什么?嗯,${"其實我不是變量~"}`);
結(jié)果如下所示:

10.如果希望引用模版字符串本身,可以像下面這樣寫:
let str="return"+"`Hello! ${name}`";
let func=new Function("name",str);
console.log(func("zzw"));
結(jié)果如下:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
layui數(shù)據(jù)表格實現(xiàn)重載數(shù)據(jù)表格功能(搜索功能)
這篇文章主要介紹了layui數(shù)據(jù)表格實現(xiàn)重載數(shù)據(jù)表格功能,以搜索功能為例進行講解,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07
js禁止document element對象選中文本實現(xiàn)代碼
禁止document element對象選中文本在某在情況下還是很有必要的接下來本文將使用js實現(xiàn),感興趣的各位可以參考下哈2013-03-03
javascript精確統(tǒng)計網(wǎng)站訪問量實例代碼
網(wǎng)站一般都有訪問量統(tǒng)計工具,比較高效實用的工具多種多樣,這篇文章主要介紹了javascript精確統(tǒng)計網(wǎng)站訪問量實例代碼,感興趣的小伙伴們可以參考一下2015-12-12
JS奇技之利用scroll來監(jiān)聽resize詳解
這篇文章主要給大家介紹了JS奇技之利用scroll來監(jiān)聽resize的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。2017-06-06
js分解url參數(shù)(面向?qū)ο?極簡主義法應用)
剛看到笑看風云寫的JavaScript面向?qū)ο?極簡主義法)和一個分解url參數(shù)面試題,我作了一下修改,記錄下來2012-08-08

