先看看JavaScript中兩個字符串的效果,就很容易知道模板字符串是個啥東西,其實一點也不新鮮。高級編程中,例如java裏面的string.format就是幹這個事情,諸如此類。java
1. 概念理解編程
A.老式作法spa
var ohello='good good day, day day good' var oworld='please look ' + '"' + ohello + '"' + ', cool style, please enjoy it' console.info(oworld)
B.新式作法code
var hello='good good day, day day good' var world=`please look "${hello}", cool style, please enjoy it` console.info(world)
是否是新式作法簡單了不少,這種表達方式是ES6提出的模板字符串方式。orm
模板字符串(template string)是加強版的字符串,用反引號(`)標識。它能夠看成普通字符串使用,也能夠用來定義多行字符串,或者在字符串中嵌入變量。變量的獲取方式是${varName},使得字符串模板定義簡單化。對象
2. 模板字符串中有沒有變量不是剛需blog
var str1 = `hello world` console.log(str1)
字符串模板方便了將變量的值嵌入到模板字符串中。ip
3. 若是使用模版字符串輸出多行字符串,全部的空格和縮進都會被保存在輸出中!!字符串
console.log(`No matter\` what you do, I trust you. 。。。。 呵呵`)
4. 在${}中的大括號裏能夠放入任意的JavaScript表達式,及引用對象屬性(相似Spring SpEL表達式),還能夠進行運算。string
var x=100; var y=123; console.log(`x=${x++},y=${x+y}`);