ES6模板字符串【${}配合反单引号一起用】

先看看JavaScript中两个字符串的效果,就很容易知道模板字符串是个啥东西,其实一点也不新鲜。高级编程中,例如java里面的string.format就是干这个事情,诸如此类。

1. 概念理解

A.老式做法

var ohello='good good day, day day good'
var oworld='please look ' + '"' + ohello + '"' + ', cool style, please enjoy it'
console.info(oworld)

B.新式做法

var hello='good good day, day day good'
var world=`please look "${hello}", cool style, please enjoy it`
console.info(world)

是不是新式做法简单了很多,这种表达方式是ES6提出的模板字符串方式。

模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。变量的获取方式是${varName},使得字符串模板定义简单化。

ES6模板字符串【${}配合反单引号一起用】

2. 模板字符串中有没有变量不是刚需

var str1 = `hello world`
console.log(str1)

字符串模板方便了将变量的值嵌入到模板字符串中

3. 如果使用模版字符串输出多行字符串,所有的空格和缩进都会被保存在输出中!!

console.log(`No matter\` what you do,

I trust you.
。。。。
呵呵`)

ES6模板字符串【${}配合反单引号一起用】

4. 在${}中的大括号里可以放入任意的JavaScript表达式,及引用对象属性(类似Spring SpEL表达式),还可以进行运算。

var x=;
var y=;
console.log(`x=${x++},y=${x+y}`);

ES6模板字符串【${}配合反单引号一起用】

上一篇:java静态方法调用&&构造函数&&静态块


下一篇:[转] Qt 多线程学习