JSDoc est un outil de documentation pour JavaScript qui vous permet d'ajouter des commentaires tapés et structurés à votre code. Semblable à JavaDoc pour Java, JSDoc aide non seulement à documenter votre code, mais améliore également l'expérience de développement grâce à la saisie semi-automatique et à la saisie d'informations dans des éditeurs modernes comme Visual Studio Code.
Les commentaires JSDoc commencent par /**et terminer par*/:
/** * Calcula el área de un rectángulo. * @param {number} ancho - El ancho del rectángulo * @param {number} alto - El alto del rectángulo * @returns {number} El área del rectángulo */ function calcularArea(ancho, alto) { return ancho * alto; }
Documenter les paramètres d'une fonction :
/** * @param {string} nombre - Nombre del usuario * @param {number} [edad] - Edad del usuario (opcional) * @param {Object} opciones - Opciones de configuración * @param {boolean} opciones.activo - Estado del usuario * @param {string} opciones.rol - Rol del usuario */ function crearUsuario(nombre, edad, opciones) { // Implementación }
Spécifie la valeur de retour :
/** * @returns {Promise<User>} Promesa que resuelve con los datos del usuario */ async function obtenerUsuario() { // Implementación }
Définir des types personnalisés :
/** * @typedef {Object} Usuario * @property {string} id - ID único del usuario * @property {string} nombre - Nombre completo * @property {number} edad - Edad del usuario * @property {string[]} roles - Lista de roles asignados */ /** * @param {Usuario} usuario * @returns {boolean} */ function validarUsuario(usuario) { // Implementación }
Définit les types pour les fonctions de rappel :
/** * @callback ValidatorCallback * @param {string} valor - Valor a validar * @returns {boolean} Resultado de la validación */ /** * @param {string} dato * @param {ValidatorCallback} validador */ function procesarDato(dato, validador) { if (validador(dato)) { // Procesar dato } }
/** * @param {Array<string>} nombres - Lista de nombres * @param {Object.<string, number>} edades - Mapa de nombres a edades */ function procesarDatos(nombres, edades) { // Implementación }
/** * @param {string|number} id - ID que puede ser string o número * @param {?string} descripcion - Descripción opcional (puede ser null) */ function buscarElemento(id, descripcion) { // Implementación }
/** * Representa un vehículo genérico. * @class */ class Vehiculo { /** * Crea una instancia de Vehiculo. * @param {string} marca - Marca del vehículo * @param {string} modelo - Modelo del vehículo * @param {number} año - Año de fabricación */ constructor(marca, modelo, año) { this.marca = marca; this.modelo = modelo; this.año = año; } /** * Calcula la edad del vehículo. * @returns {number} Edad en años */ obtenerEdad() { return new Date().getFullYear() - this.año; } }
Créez un fichier jsconfig.json à la racine de votre projet :
{ "compilerOptions": { "checkJs": true, "strictNullChecks": true, "strictFunctionTypes": true }, "exclude": ["node_modules", "dist"] }
npm install -g jsdoc
Créez un fichier jsdoc.json :
/** * Calcula el área de un rectángulo. * @param {number} ancho - El ancho del rectángulo * @param {number} alto - El alto del rectángulo * @returns {number} El área del rectángulo */ function calcularArea(ancho, alto) { return ancho * alto; }
/** * @param {string} nombre - Nombre del usuario * @param {number} [edad] - Edad del usuario (opcional) * @param {Object} opciones - Opciones de configuración * @param {boolean} opciones.activo - Estado del usuario * @param {string} opciones.rol - Rol del usuario */ function crearUsuario(nombre, edad, opciones) { // Implementación }
/** * @returns {Promise<User>} Promesa que resuelve con los datos del usuario */ async function obtenerUsuario() { // Implementación }
/** * @typedef {Object} Usuario * @property {string} id - ID único del usuario * @property {string} nombre - Nombre completo * @property {number} edad - Edad del usuario * @property {string[]} roles - Lista de roles asignados */ /** * @param {Usuario} usuario * @returns {boolean} */ function validarUsuario(usuario) { // Implementación }
/** * @callback ValidatorCallback * @param {string} valor - Valor a validar * @returns {boolean} Resultado de la validación */ /** * @param {string} dato * @param {ValidatorCallback} validador */ function procesarDato(dato, validador) { if (validador(dato)) { // Procesar dato } }
JSDoc est un outil puissant qui améliore considérablement la qualité et la maintenabilité de votre code JavaScript. Avec le bon support IDE et les bons outils de génération de documentation, vous pouvez créer une base de code plus robuste et plus maintenable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!