Что означает этот код `…${…}…` в документации по узлам?

Я пытаюсь изучить библиотеку 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, как и любая другая переменная. Когда мы используем его на веб-разработке на стороне клиента, он используется в качестве делегата для функции документа (я думаю). На что он назначается при использовании узла?

Кроме того, что означает этот синтаксис? ${circle.area(4)}

Если $ это просто ссылка на какую-то функцию someFunction()не будет ли это эквивалентно someFunction(){cirle.area(4)}, Я не вижу, как это может быть допустимым синтаксисом.

Кроме того, почему бы им просто не позвонить напрямую circle.area() функционировать напрямую в любом случае?

1 ответ

Решение

Это:

`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.');
Другие вопросы по тегам