在 JavaScript 中,反引号†似乎与单引号的作用相同。例如,我可以使用反引号来定义这样的字符串:
var s = `abc`;
有没有一种方法可以使反引号的行为实际上与单引号的行为不同?
† 请注意,在程序员中,“反引号”是更普遍地称为 重音 的名称之一。程序员有时也使用 备用名称“backquote”和“backgrave”。此外, 在 Stack Overflow 和其他地方,“反引号”的其他常见拼写是“反引号”和“反引号”。
原文由 vancewang 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个称为 模板文字 的功能。
在 ECMAScript 2015 规范的先前版本中,它们被称为“模板字符串”。
Firefox 34、Chrome 41 和 Edge 12 及更高版本支持模板文字,但 Internet Explorer 不支持。
模板文字可用于表示多行字符串,并可使用“插值”来插入变量:
输出:
更重要的是,它们不仅可以包含变量名,还可以包含任何 JavaScript 表达式: