0%

javascript-template-string

Introduction

JavaScript模板字符串是ES6新增的一种字符串形式,它可以让我们在字符串中插入变量,而不需要使用+号连接字符串,这样使得字符串的拼接更加简洁。以下是模板字符串的特点。

Interpolation

模板字符串中可以插入变量,使用${}包裹变量名。

1
2
3
const name = 'zdd';
const str = `Hello, ${name}`;
console.log(str); // Hello, zdd

Multiple lines of string

模板字符串可以跨行,这样我们就可以直接在字符串中换行,而不需要使用\n

1
2
3
const str = `Hello
World`;
console.log(str);

Tagged template

模板字符串还支持标签模板,即在模板字符串前面加上一个函数名,这个函数会处理模板字符串的内容。所以,这个模板字符串的应用场景是什么?在项目中好像没见过这么用的。

1
2
3
4
5
6
7
8
9
function tag(strings, ...values) {
console.log(strings); // ['Hello, ', '']
console.log(values); // ['zdd']
return 'Hello, ' + values[0];
}

const name = 'zdd';
const str = tag`Hello, ${name}`;
console.log(str); // Hello, zdd