这个 `…${…}…` 代码在 Node 文档中是什么意思?

6

我正在逐步学习Express库和Node.js,首先看的是Node require(moduleName)函数的具体内容。

我查看了文档,在示例文档中发现了一些奇怪的代码:

const circle = require('./circle.js');
console.log( `The area of a circle of radius 4 is ${circle.area(4)}`);

更具体地说,${circle.area(4)} 位。

据我所知,在JavaScript中,$ 就像任何其他变量一样。在客户端web开发中使用它作为 document 函数的委派(我想是这样)。在使用node时,它分配给什么?

除此之外,这个语法是什么意思?${circle.area(4)}

如果 $ 只是指向某个函数 someFunction(),那么它不就相当于这个 someFunction(){cirle.area(4)} 吗?我不明白那会是有效的语法。

另外,他们为什么不直接调用 circle.area() 函数呢?

1个回答

17

这个:

`The area of a circle of radius 4 is ${circle.area(4)}`

这是一个示例,演示了使用ES2015模板字符串

它直接将circle.area(4)所代表的内容插值到字符串中。如果你对此或其他ES2015特性感兴趣,我建议你查看Babel并在 REPL 中进行尝试。

这里有一个非常简单的示例,可以帮助你入门。

你可以在这里看到这个 ES2015 代码:

const foo = 'some text';
console.log(`${foo} is interpolated.`);

被转译为它的ES5等价形式 - 一个简单的+连接:

var foo = 'some text';
console.log(foo + ' is interpolated.');

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接