ES6 / ECMA6模板文字 - 无效

时间:2016-05-16 02:00:45

标签: javascript jquery ecmascript-6

我想尝试使用template literals并且它不起作用:它显示文字变量名称而不是值。我使用的是Chrome v50.0.2(和jQuery)。

实施例

console.log('categoryName: ${this.categoryName}\ncategoryElements: ${this.categoryElements} ');

输出:

${this.categoryName} 
categoryElements: ${this.categoryElements} 

5 个答案:

答案 0 :(得分:83)

JavaScript 模板文字需要反引号,而不是直引号。

您需要使用反引号(也称为“严重重音符号” - 您可以在1键旁边找到) - 而不是单引号 - 来创建模板文字。

反引号在许多编程语言中很常见,但对于JavaScript开发人员来说可能是新手。

示例

categoryName="name";
categoryElements="element";
console.log(`categoryName: ${this.categoryName}\ncategoryElements: ${categoryElements} `) 

<强>输出

VM626:1 categoryName: name 
categoryElements: element

请参阅: What is the usage of the backtick symbol (`) in JavaScript?

答案 1 :(得分:1)

有三个引号,但只有一个入口有效,我们可以将其用作模板文字:

  1. " "(键盘上的 é 键)不起作用:
console.log("Server is running on port: ${PORT}")
  1. ' 'Shift + 2 键盘上的键)不起作用:
console.log('Server is running on port: ${PORT}')
  1. ` `Alt + Num96 键盘上的键)正在工作:
console.log(`Server is running on port: ${PORT}`)

Screenshot of console.log(Server is running on port: ${PORT})

答案 2 :(得分:0)

1。)将.jshitrc与您的app.js和其他文件添加到同一文件夹级别

2。)将其放入新创建的文件{“ esversion”:6}

3。)永远不要使用单引号'使用反引号`

答案 3 :(得分:0)

grep -C 1

答案 4 :(得分:0)

它仅在您使用背包时才有效,在我的 Mac Pro 上,它位于 Tab 键上方。

如果您使用单引号或双引号,它将不起作用!