详解es6模板字符串

简介: 前端开发者避免不了根据后台数据的返回,组装html,渲染页面;有时候还要给标签加一些属性,写起来很不方便,es6提供了模板字符串的方法,简化了这一过程

前端开发者避免不了根据后台数据的返回,组装html,渲染页面。举个例子:

$('#result').append(
 'There are <b>' + basket.count + '</b> ' +
 'items in your basket, ' +
 '<em>' + basket.onSale +
 '</em> are on sale!'
);

有时候还要给标签加一些属性,写起来很不方便,es6提供了模板字符串的方法,简化了这一过程

$('#result').append(`
 There are <b>${basket.count}</b> items
  in your basket, <em>${basket.onSale}</em>
 are on sale!
`);

image.png
所有模板字符串的空格和换行,都是被保留的,如果你不想要前后换行,可以使用trim方法消除它。

在{}你可以写任意JavaScript表达式,包括调用函数

var x = 1;
var y = 2;

`${x} + ${y} = ${x + y}`
// "1 + 2 = 3"

`${x} + ${y * 2} = ${x + y * 2}`
// "1 + 4 = 5"

var obj = {x: 1, y: 2};
`${obj.x + obj.y}`
// "3"
function fn() {
 return "Hello World";
}

`foo ${fn()} bar`
// foo Hello World bar

如果变量没有声明,会报错,如果{}中是一个字符串,则原样返回

// 变量place没有声明
var msg = `Hello, ${place}`;
// 报错
`Hello ${'World'}`
// "Hello World"
相关文章
|
6月前
|
JavaScript 前端开发
ES6的模板字符串使用
ES6的模板字符串使用
67 0
|
6月前
|
JavaScript 前端开发
ES6之模板字符串及字符串新增方法
ES6之模板字符串及字符串新增方法
|
6月前
|
编解码 JavaScript 前端开发
ES6 字符串的新增方法
ES6 字符串的新增方法
|
6月前
|
JSON 自然语言处理 JavaScript
ES6 字符串的扩展
ES6 字符串的扩展
|
3月前
|
JavaScript 前端开发
es6-模版字符串
【8月更文挑战第19天】
33 1
|
6月前
|
JavaScript 前端开发 索引
ES6学习之字符串
ES6学习之字符串
ES6模板字符串的基本使用
ES6模板字符串的基本使用
ES6系列笔记-字符串方法和字符串模板
ES6系列笔记-字符串方法和字符串模板
39 1
|
6月前
|
JavaScript 前端开发
ES6 什么是模板字符串?
ES6 什么是模板字符串?
|
11月前
|
JavaScript 前端开发
ES6学习(四)—字符串的新增方法
ES6学习(四)—字符串的新增方法