这是什么'...${...}节点文档中的代码意味着

What does this `…${…}…` code in the node docs mean?

本文关键字:文档 节点 意味着 代码 是什么      更新时间:2023-09-26

我要一步一步地尝试学习Express库和Node.js。首先,我要看的是节点reqiure(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 开发中使用它时,它被用作文档功能的代表(我认为)。使用节点时分配给什么?

最重要的是,这种语法是什么意思? ${circle.area(4)}

如果$只是对某个函数someFunction()的引用,岂不是等同于这个someFunction(){cirle.area(4)}。我没有看到这怎么可能是有效的语法。

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

这个:

`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.');