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

标签 javascript node.js ecmascript-6 template-strings template-literals

<分区>

我打算一步一步地学习 Express 库和 Node.js。首先我要看的是 Node reqiure(moduleName) 函数的细节。

我看了一下the documentation为此,在示例文档中发现了一些奇怪的代码:

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

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

据我了解,JavaScript 中的 $ 与任何其他变量一样。当我们在客户端 Web 开发中使用它时,它被用作文档功能的委托(delegate)(我认为)。使用 Node 时分配给什么?

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

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

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

最佳答案

这个:

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

ES2015 template strings的一个例子.

它将 circle.area(4) 表示的任何内容直接插入到字符串中。如果您对此或其他 ES2015 功能感到好奇,我建议您查看 Babel并在 REPL 中玩耍。

Here's a very simple example让你开始。

你可以看到这段 ES2015 代码:

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

被转译为它的 ES5 等价物——一个简单的 + 连接:

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

关于javascript - Node 文档中的这个 `…${…}…` 代码是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36107981/

相关文章:

javascript - 如何在有条件的情况下在另一个组件正下方的无状态组件上呈现函数?

javascript - 没有框架可以使用 Accordion 导航吗?

javascript - 悬停时更改对象的大小

javascript - 一个复选框检查其他复选框

linux - 拦截输入设备发送的数据

node.js - Mongoose withTransaction 仅部分执行

java - 如何从单个 jsp 中的 onload 和 onclick 事件调用 java 操作类

node.js - 如何在 Sequelize Postgres 中更新数组

javascript - 有没有办法为按钮数组添加事件类 onClick?

javascript - 我可以将数组解构和 .trim() 结合起来吗?