В JSDoc типы данных могут быть описаны с помощью специального синтаксиса. Для описания типа через результат вызова функции в JSDoc используется ключевое слово function
с указанием типов для аргументов функции и типа возвращаемого значения.
Пример описания типа через результат вызова функции:
/** * @function * @param {number} num1 - Первое число * @param {number} num2 - Второе число * @returns {number} - Сумма двух чисел */ function sum(num1, num2) { return num1 + num2; }
В данном примере функция sum
принимает два числовых аргумента num1
и num2
, а возвращает число - их сумму. Такой тип описывается через @returns
и указывается после знака возвращает
.
Также возможно использование более сложных типов данных, например, объектов или массивов. Пример:
/** * @function * @param {string[]} names - Массив имен * @returns {object} - Объект с информацией о именах * @property {string} first - Первое имя * @property {string} last - Последнее имя */ function processNames(names) { return { first: names[0], last: names[names.length - 1] }; }
В данном примере функция processNames
принимает массив строк names
, а возвращает объект с двумя свойствами first
и last
, которые являются строками. Такой тип описывается через указание типа объекта и типов его свойств.