5

我打算一步一步地学习 Express 库和 Node.js。首先我要看的是 Nodereqiure(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)}

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

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

4

1 回答 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.');
于 2016-03-19T22:30:09.130 回答