Я видел комментарии, которые содержат @some text
в нем. Это пример из express.js:
/**
* Create an express application.
*
* @return {Function}
* @api public
*/
Эти @comments
также по-разному кодируются цветом в коде Visual Studio.
Какова цель @
предшествующих комментариев?
Это комментарии JSDoc. Они полезны для объяснения того, что делает функция, какие параметры и типы она принимает и что она выводит при наведении или использовании функции в вашей среде IDE.
Он называется JSDoc и представляет собой автоматически сгенерированную документацию (в виде комментариев), которую можно использовать в ваших файлах JavaScript.
Он взаимодействует со многими IDE (интегрированными интерфейсами разработки), такими как VSCode, и также полезен для отображения аннотаций типов. Вот функция с аннотацией типа:
/**
* Represents a person
* @constructor
* @param {string} name - The name of the person
* @param {number} age - The age of the person
*/
function Person(name, age) {
this.name = name;
this.age = age;
}
Как видите, документация JSDoc идет дальше описываемой функции и знает, что:
@constructor
)@param
) типа string
с именем name
, который представляет имя человека.@param
) типа number
с именем age
, который представляет возраст человека.В этом смысле он похож на TypeScript — он использует аннотации типов (за исключением того, что это просто комментарии, они не применяются, как это было бы компилятором TypeScript).