ES6之模版字元串
最近在項目中使用了ES6的模版字元串,在這裡加以總結。
1.之前我們也可以使用JavaScript輸出模版字元串,通常是下面這樣的:
但是我們可以看到:這樣的傳統做法需要使用大量的“”(雙引号)和 + 來拼接才能得到我們需要的模版。但是這樣是十分不友善的。
于是ES6中提供了模版字元串,用`(反引号)辨別,用${}将變量括起來。上面的例子可以用模版字元串寫成下面這樣:
這樣的做法就簡潔了很多,我們不需要再使用大量的""和+來拼接字元串和變量。
2. 當然,模版字元串可以引入變量,不使用變量也是可以的。如下所示:
3. 我們還可以先定義變量,然後在模版字元串中嵌入變量:
4.顯然,由于反引号是模版字元串的辨別,如果我們需要在字元串中使用反引号,我們就需要對其進行轉義,如下所示:
5.注意:如果使用模版字元串表示多行字元串,所有的空格和縮進都會被儲存在輸出中!!
輸出結果如下:

6. 在${}中的大括号裡可以放入任意的JavaScript表達式,還可以進行運算,以及引用對象屬性。
結果如下所示:
7.更強大的是:模版字元串還可以調用函數:
結果如下所示:
另外,如果函數的結果不是字元串,那麼,将按照一般的規則轉化為字元串:
在這裡,實際上數字666被轉化成了字元串666.
8.如果在${}中的變量時沒有命名的,那麼會報錯:
在上面這句代碼中,string()函數沒有聲明,于是報錯:
9.其實,我們還可以在${}中輸入一個字元串,知識結果仍舊會傳回一個字元串:
10.如果希望引用模版字元串本身,可以像下面這樣寫:
結果如下:
沒有傘的孩子必須努力奔跑!