JavaScript 中反引号 (\`) 的使用

新手上路,请多包涵

在 JavaScript 中,反引号†似乎与单引号的作用相同。例如,我可以使用反引号来定义这样的字符串:

 var s = `abc`;

有没有一种方法可以使反引号的行为实际上与单引号的行为不同?


† 请注意,在程序员中,“反引号”是更普遍地称为 重音 的名称之一。程序员有时也使用 备用名称“backquote”和“backgrave”。此外, 在 Stack Overflow 和其他地方,“反引号”的其他常见拼写是“反引号”和“反引号”。

原文由 vancewang 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
1 个回答

这是一个称为 模板文字 的功能。

在 ECMAScript 2015 规范的先前版本中,它们被称为“模板字符串”。

Firefox 34、Chrome 41 和 Edge 12 及更高版本支持模板文字,但 Internet Explorer 不支持。

模板文字可用于表示多行字符串,并可使用“插值”来插入变量:

 var a = 123, str = `---
   a is: ${a}
---`;
console.log(str);

输出:

 ---
   a is: 123
---

更重要的是,它们不仅可以包含变量名,还可以包含任何 JavaScript 表达式:

 var a = 3, b = 3.1415;

console.log(`PI is nearly ${Math.max(a, b)}`);

原文由 try-catch-finally 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题