Теги комментариев, которые должен освоить каждый JSer

JavaScript

Введение

Теги комментариев играют очень важную роль в комментариях к коду, но многие студенты могут игнорировать роль этих тегов в обычной разработке, поэтому я специально организую здесь некоторые часто используемые теги комментариев и показываю их в виде изображений и текстов, надеясь помочь. вам лучше Легко понять, что делает каждый тег аннотации.

Предположительно, после освоения этих тегов аннотаций это поможет вам не только писать собственный код в будущем, но и читать отличный исходный код.

Может быть, вы в одном ярлыке от красивого кода ^_^

Адрес проекта проекта : GitHub.com/Шин Гаочжэнь…

Большое количество тегов комментариев в исходном коде Egg

Egg源码中注释截图

Общие теги

@abstract

@abstract: метод члена, указанный этим тегом, должен быть реализован в объекте, который наследует член.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

Псевдоним:@virtual

Обзор

Этот член (как правило, метод родительского класса) должен быть реализован (или переопределен) в унаследованном подклассе.

грамматика

@abstract

Производительность этикетки

demo.jpg

@constructor

@constructor: одеялоconstructorОтмеченные методы рассматриваются как конструкторы.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

грамматика

@class [<type> <name>]

псевдоним

@class

Эффект метки

demo.jpg

@deprecated

@deprecated: функция или метод-член, помеченный этим, означает, что он будет объявлен устаревшим в следующей версии, и информирует соответствующую сторону о том, что этот метод больше не рекомендуется.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

грамматика

@deprecated [<some text>]

описывать

  • Если отмеченный метод устарел только потому, что был заменен другим новым методом, вы можете комбинировать@seeдля представления замененного метода

эффект этикетки

Устаревший ярлык

demo1.jpg

с @см.

demo2.jpg

@inheritdoc

@inheritdoc: указывает, что этот идентификатор должен наследовать документ своего родительского класса.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

грамматика

@inheritdoc

эффект этикетки

demo.jpg

@member

@member: Вы можете определить тип для переменной-члена.Вы можете дополнительно указать имя для переменной-члена.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

псевдоним

@var

грамматика

@member [<type>] [<name>]

тип

тип базовый тип

Типы иллюстрировать
string нить
Array or Type[] множество
number количество
Object объект
Class пользовательское имя класса
Function тип метода
null -
* любой тип

формат типа

имя типа Пример синтаксиса описывать
Symbol name {boolean}
{myNamespace.MyClass}
Задает имя символа. Если идентификатор уже задокументирован, JSDoc создаст документацию, связанную с этим идентификатором.
Multiple types {number|boolean}
Представляет число или логическое значение
Это означает, что значение может быть одним из нескольких типов и использовать|Полный список типов с разделителями.
Arrays {Array.string} or string[]
представляет собой массив строк
-
Objects {name: string, age : number} or Object -
Nullable type число или ноль {?number} Указывает, что тип является указанным типом или нулевым.
Non-nullable type Число, но уж точно не null {!Number} Указанный тип является указанным типом, но никогда не нулевым.
Variable number of that type Эта функция принимает переменное количество числовых аргументов.
@param {...number} num
Указывает, что функция принимает переменное количество параметров, и указывает параметр типа
Optional parameter необязательный параметр
@param {number} [foo]
@param {число} [foo=1] необязательный параметр, по умолчанию=1
Указывает, что параметр является необязательным. При выражении необязательных параметров с использованием синтаксиса JSDoc вы также можете указать для параметров значения по умолчанию.

эффект этикетки

demo.jpg

@param

@paramТег : предоставляет различные описания параметров функции, включая имена параметров, типы данных параметров, описания и т. д.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

грамматика

@param {type} {name} {desc}

Обзор

@paramМетки требуют, чтобы вы указали имя параметра, который вы хотите описать. Вы также можете указать тип данных параметра, заключенный в фигурные скобки, и описание параметра.

Выражения типа могут иметь следующие выражения

  • путь имени идентификатора (например, myNamespace.MyClass)
  • встроенный тип javascript (например, строка, число)
  • Сочетание двух вышеперечисленных

эффект этикетки

Тип определения входного параметра функции

demo.jpg

Входным параметром функции является объект, который может определять тип свойства входного объекта.

demo.jpg

@see

@see: этот тег указывает, что можно ссылаться на документацию по другому идентификатору или внешнему ресурсу.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

грамматика

  • @see <namepath>
  • @see <url>

эффект этикетки

Анимированный контент презентации

  • Через {Foo#bar}, отмеченный @see, вы можете перейти к свойству члена bar в классе Foo.
  • Щелкая по внешним ссылкам, отмеченным @seewww.baidu.com, вы можете перейти в браузер для просмотра

demo.jpg

@throws

@throws: Указывает, какие ошибки могут быть выданы.

Подробная демонстрация кода : GitHub.com/Шин Гаочжэнь…

Этот тег рекомендуется читать с помощью PhpStorm/WebStorm, что может интуитивно отражать роль тега.

грамматика

  • @throws free-form description
  • @throws {<type>}
  • @throws {<type>} free-form description

Обзор

@throwsМетка позволяет вам описать функцию, которая может быть выброшена. Вы можете включить несколько вкладок @Throws в блок комментариев.

Example

/**
 * @description 抛出指定错误类型的错误
 * @throws {SQLException}
 */
function tagThrows1() {
}

/**
 * @throws SQL Execute failed
 */
function tagThrows2() {
}

/**
 * @throws {SQLException} SQL Execute failed.
 */
function tagThrows3() {
}

наконец

Длина статьи ограничена. Некоторые теги перечислены здесь. Доступ к другим тегам можно получить по следующим адресам проектов

Адрес проекта проекта : GitHub.com/Шин Гаочжэнь…

Ярлык будет время от времени обновляться, приветствую всехstar & fork

Ваша поддержка — самая большая мотивация для моего обновления~~