5

Express ライブラリと Node.js を 1 つずつ学習しようとしています。最初に見ているのは、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)}

$ある関数への単なる参照である場合、someFunction()これと同等ではないでしょうか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 に答える