ecmascript模板文本,如'some${string}'不起作用

7ajki6be  于 2021-09-29  发布在  Java
关注(0)|答案(5)|浏览(264)

我想尝试使用模板文本,但它不起作用:它显示的是文本变量名,而不是值。我使用的是ChromeV50.0.2(和jquery)。

范例

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

输出

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

gywdnpxw1#

javascript模板文本需要倒勾,而不是直接的引号。

您需要使用反勾号(或者称为“严重重音”——如果您使用的是qwerty键盘,您可以在1键旁边找到)而不是单引号来创建模板文字。
反勾号在许多编程语言中很常见,但对javascript开发人员来说可能是新的。
例子:

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

输出:

VM626:1 categoryName: name 
categoryElements: element

见:
javascript中反勾号(`)的用法

zujrkrfu

zujrkrfu2#

有三个引号,但只有一个入口可用作模板文字: " " (键盘上的键)不工作:

console.log("Server is running on port: ${PORT}")
``` `' '` (键盘上的shift+2键)不工作:

console.log('Server is running on port: ${PORT}')
``` (键盘上的alt+num96键)正在工作:

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

juzqafwq

juzqafwq3#

只有当你使用背包时,它才有效,在我的mac pro上,它是“在tab键上方”。
如果你使用单引号或双引号,它将不起作用!

axkjgtzd

axkjgtzd4#

// Example
var person = {
  name: "Meera",
  hello: function(things) {
    console.log(`${this.name} Says hello ${things}`);
  }
}

// Calling function hello
person.hello("World");

//Meera Says hello World
4xy9mtcn

4xy9mtcn5#

1.)将.jshitrc添加到与app.js和其他文件相同的文件夹级别
2.)将其放入新创建的文件{“esversion”:6}
3.)切勿使用单引号“使用反勾号”`

相关问题