欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ES6之模版字符串的具體使用

 更新時(shí)間:2018年05月17日 09:55:44   作者:Wayne Zhu  
這篇文章主要介紹了ES6之模版字符串的具體使用,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

最近在項(xiàng)目中使用了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中提供了模版字符串,用`(反引號)標(biāo)識,用${}將變量括起來。上面的例子可以用模版字符串寫成下面這樣:

$("#result").append(
  `He is <b>${person.name}</b>and we wish to know his${person.age}.that is all`
    );

這樣的做法就簡潔了很多,我們不需要再使用大量的""和+來拼接字符串和變量。

2. 當(dāng)然,模版字符串可以引入變量,不使用變量也是可以的。如下所示:

` 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.顯然,由于反引號是模版字符串的標(biāo)識,如果我們需要在字符串中使用反引號,我們就需要對其進(jìn)行轉(zhuǎn)義,如下所示:

`No matter\` what you do,
I trust you.`

5.注意:如果使用模版字符串表示多行字符串,所有的空格和縮進(jìn)都會被保存在輸出中??!

console.log( `No matter\` what you do,
 I trust you.`); 

輸出結(jié)果如下:

6. 在${}中的大括號里可以放入任意的JavaScript表達(dá)式,還可以進(jìn)行運(yùn)算,以及引用對象屬性。

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í)沒有命名的,那么會報(bào)錯(cuò):

console.log(`你想說什么? 嗯,${string()}`);

在上面這句代碼中,string()函數(shù)沒有聲明,于是報(bào)錯(cuò):

9.其實(shí),我們還可以在${}中輸入一個(gè)字符串,知識結(jié)果仍舊會返回一個(gè)字符串:

console.log(`你想說什么?嗯,${"其實(shí)我不是變量~"}`);

結(jié)果如下所示:

10.如果希望引用模版字符串本身,可以像下面這樣寫:

let str="return"+"`Hello! ${name}`";
let func=new Function("name",str);
 console.log(func("zzw"));

結(jié)果如下:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論