JavaScript模板字符串是ES6新增的一种字符串表示方式,用反引号(`)来标识。模板字符串可以实现多行字符串的拼接,也可以在字符串中嵌入变量。
使用方法
- 1.多行字符串拼接:模板字符串可以拼接多行字符串,只需要将多行字符串放在反引号中即可,无需使用\n进行换行操作。
- 2.嵌入变量:模板字符串可以嵌入变量,只需要将变量名称放在${}中即可,${}中的内容可以是任意的js表达式。
- 3.标签模板:模板字符串可以使用标签模板,只需要将模板字符串放在一个函数后面,函数会接收到模板字符串中的变量,可以对这些变量进行处理,返回处理后的字符串。
//多行字符串拼接
let str = `hello
world`;
console.log(str); // hello world
//嵌入变量
let name = 'Jack';
let age = 20;
let str = `My name is ${name}, I am ${age} years old.`;
console.log(str); // My name is Jack, I am 20 years old.
//标签模板
let name = 'Jack';
let age = 20;
let str = tag`My name is ${name}, I am ${age} years old.`;
console.log(str); // My name is Jack, I am 20 years old.
function tag(strings, ...values) {
// strings: ["My name is ", ", I am ", " years old."]
// values: ["Jack", 20]
let str = '';
for (let i = 0; i < strings.length; i++) {
str += strings[i];
if (i < values.length) {
str += values[i];
}
}
return str;
}