fb pixel
გამოიწერე YouTube-ის არხიyoutube logoგამოწერა
val-do.com-ის ლოგო
კურსებიბლოგიხ.დ.კ.წესებიკონტაქტიკონვერტორები

კურსებიბლოგიხ.დ.კ.წესებიკონტაქტიკონვერტორები
შესვლა
  1. მთავარი
  2. კურსები
  3. ჯავასკრიპტის კურსი
  4. JSDocs - დოკუმენტაციის წერა ჯავასკრიპტში
JSDocs - დოკუმენტაციის წერა ჯავასკრიპტში

JSDocs - დოკუმენტაციის წერა ჯავასკრიპტში

როდესაც ჩვენი პროექტი ზომაში იზრდება და ასევე გვიწევს გუნდური მუშაობა, აუცილებელია დოკუმენტაციის წერა, რათა ნათელი იყოს თუ რას აკეთებს ესა თუ ის ფუნქცია ან კლასი, სწორედ ამაში გამოიყენება JSDocs.

JSDoc წარმოადგენს მონიშვნის ენას, რომელიც ჯავასკრიპტის კომენტარების დახმარებით აღწერს ამა თუ იმ ფუნქციის ან კლასის მუშაობის ლოგიკას.

ძირითადი სინტქსი

JSDoc-ის კომენტარები აუცილებლად უნდა ეწეროს ფუნქციის, კლასის ან ცვლადის ზემოთ მრავალხაზიან კომენტარში

მაგალითი:

/**
 * Adds two numbers together.
 * @param {number} a - The first number.
 * @param {number} b - The second number.
 * @returns {number} The sum of the two numbers.
 */
function add(a, b) {
  return a + b;
}

გავარჩიოთ ზემოთ მოყვანილი მაგალითი

  • /** ... */: წარმოადგენს JSDoc-ის კომენტარის ბლოკს.
  • @param {type} a: აღწერს თუ რა პარამეტრები აქვს არსებულ ფუნქციას და რა ტიპისაა ისინი.
  • @returns {type}: აღწერს თუ რას და რა ტიპის მონაცემს აბრუნებს ფუნქცია.

ძირითადი JSDocs-ის თეგები

ქვემოთ ჩამოვთვლი ყველაზე ხშირად გამოყენებულ JSDoc-ის თეგებს თავისი აღწერებით

  1. @param ან @arg ან @argument
    • აღწერს ფუნქციის არგუმენტს.
    • სინტაქსი: @param {type} a - აღწერა
    • მაგალითი: @param {string} a - შესაკრები რიცხვი
  2. @return ან @returns
    • აღწერს თუ რა ტიპის ინფორმაციას აბრუნებს ფუნქცია.
    • სინტაქსი: @returns {type} - აღწერა
    • მაგალითი: @returns {boolean} აბრუნებს true-ს თუ წარმატებით შესრულდა
  3. @type
    • აღწერს თუ რა ტიპის ინფორმაციას ინახავს ცვლადი ან თვისება
    • მაგალითი:
      /** @type {string} */
      let message = "Hello";
  4. @description ან @desc
    • ძირითადად გამოიყენება კოდის ზოგადი აღწერისთვის/
    • ხშირად გამოიყენება კომენტარის ბლოკის დასაწყისში.
  5. @example
    • გვიჩვენებს მაგალითს თუ როგორ მუშაობს კოდი
    • მაგალითი:
      /**
       * @example
       * // returns 5
       * add(2, 3);
       */
  6. @class
    • აღწერს კლასს
    • მაგალითი:
      /**
       * @class
       * @classdesc A class representing a person.
       */
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
  7. @deprecated
    • მონიშნავს ფუნქციას, როგორც მოძველებულს
    • მაგალითი: @deprecated Use newFunction instead
  8. @throws
    • აღწერს თუ რა შეცდომას აბრუნებს ფუნქცია
    • მაგალითი: @throws {Error} If the input is invalid.

ძირითადი ტიპები

JSDoc-ს აქვს ყველა ძირითადი ტიპის მხარდაჭერა, რომელიც შეიძლება ჯავასკრიპტში გვხვდებოდეს.

როგორც ზემოთ მაგალითებში განვიხილეთ ტიპი იწერება {...} სიმბოლოებს შორის.

JSDoc-ში გვაქვს 7 ძირითადი ტიპი ესენია:

  • {string}
  • {number}
  • {boolean}
  • {undefined}
  • {null}
  • {bigint}
  • {symbol}

ასევე გვაქვს კომპლექსური ტიპები, ესენია:

  • {Object}
  • {Array}
  • {Function}
  • {Date}
  • {RegExp}
  • {Map}
  • {Set}
  • {Promise}
  • {Error}

ასევე შეგვიძია გამოვიყენოთ ე.წ. union ტიპები, რომლებიც ჩვენი typescript-ის კურსიდან ვისწავლეთ.

მაგალითი:

/**
 * @param {string|null} value - A string or null
 * @returns {number|undefined} A number or undefined
 */
function processValue(value) {
  return value ? value.length : undefined;
}

შეჯამება

მხოლოდ მშრალი კოდის წერა კარგ პროგრამისტად ვერ გვაქცევს, აუცილებელია ჩვენი კოდი მარტივად კითხვადი და გარჩევადი იყოს, როგორც ჩვენთვის ასევე სხვა პროგრამისტებისთვის, რადგანაც პროგრამისტობა ასევე მოითხოვს გუნდური მუშაობის უნარებს.

JSDoc-ის დოკუმენტაციის წერა ასევე გვაძლევს საშუალებას გამოვიყენოთ jsdoc-ის package-რომელიც ავტომატურად დაგვიგენერირებს დოკუმენტაციის ფაილებს.


კურსში შემავალი თემები

🔗 js🔗 javascript

დამატებითი რესურსები

  • Telegram
  • Discord

სხვა კატეგორიები

შეისწავლეთ ვებდეველოპმენტის ენები სრულიად უფასოდ, ისეთები როგორებიცაა Javascript, HTML, CSS და კიდევ სხვა მრავალი ენა

HTML, CSS-ის სა...

HTML, CSS-ის საწყისი კურსი, დამწყებთათვის (deprecated - მოძველებული)

ჯავასკრიპტის კუ...

ჯავასკრიპტის კურსი

JavaScript-ის D...

JavaScript-ის DOM-ის კურსი

TypeScript-ის კ...

TypeScript-ის კურსი

Angular-ის კურს...

Angular-ის კურსი

HTML, CSS-ის კუ...

HTML, CSS-ის კურსი

Reactjs-ის კურს...

Reactjs-ის კურსი დამწყებთათვის

ალგორითმები...

ალგორითმები

Node.js-ის კურს...

Node.js-ის კურსი

Dart-ის კურსი...

Dart-ის კურსი

C პროგრამირების...

C პროგრამირების ენის საფუძვლები

ბოლოს დაწერილი ბლოგები პროგრამირებაზე

ქვემოთ მოცემულია უახლესი 3 ბლოგი პროგრამირების თემატიკასთან დაკავშირებით

როგორ ინახება ი...

როგორ ინახება ინფორმაცია. რა არის Bit და Byte?

რატომ არის კომფ...

რატომ არის კომფორტული სამუშაო ოთახი აუცილებელი კოდის წერისა და პროდუქტიული მუშაობისთვის?

რატომ ვერ პოულო...

რატომ ვერ პოულობენ ჯუნიორები სამსახურს?

  • რა არის ჯავასკრიპტი (javascript)?
  • ცვლადები ჯავასკრიპტში (JavaScript variables)
  • JavaScript-ის მონაცემთა ტიპები string, number
  • JavaScript-ის კომენტარები
  • JavaScript-ის მონაცემთა ტიპი ობეიქტი (object)
  • JavaScript-ის მონაცემთა ტიპი მასივი (Array)
  • JavaScript-ის ფუნქცია, როგორ მუშაობს ის?
  • JavaScript-ის ანონიმური ფუნცქცია
  • JavaScript-ის arrow function
  • JavaScript-ის მონაცემთა ტიპი boolean
  • JavaScript-ის შედარებითი და ლოგიკური ოპერატორები
  • JavaScript-ის პირობითი ოპერატორები, if() else if() else
  • JavaScript-ის switch ოპერატორი
  • JavaScript-ის for ციკლი (loop)
  • JavaScript-ის for...in ციკლი
  • JavaScript-ის for...of ციკლი
  • JavaScript-ის while და do while ციკლები
  • JavaScript-ის break და continue ოპერატორები
  • JavaScript-ის foreach ციკლი
  • JavaScript-ის სახელების შეთანხმებები
  • JavaScript-ის მეთოდი vs ფუნქცია
  • JavaScript-ის Set მეთოდი
  • JavaScript-ის კლასები, ნაწილი პირველი
  • რა არის ჯეისონი (JSON)
  • JavaScript-ის კლასები, ნაწილი მეორე
  • JavaScript-ის მოდულები
  • ობიექტის დესტრუქტურიზაცია (object destructuring)
  • რა არის callback ფუნქცია ჯავასკრიპტში
  • ჯავასკრიპტის მასივის მეთოდები, ნაწილი პირველი
  • ჯავასკრიპტის მასივის მეთოდები, ნაწილი მეორე
  • ჯავასკრიპტის filter() მეთოდი
  • ასინქრონული ჯავასკრიპტი, JavaScript Promises
  • async await, ასინქრონული ჯავასკრიპტი
  • fetch api ჯავასკრიპტში
  • მასივის map() მეთოდი
  • მასივის reduce() მეთოდი
  • localStorage ჯავასკრიპტში
  • Spread ოპერატორი ჯავასკრიპტში
  • rest ოპერატორი ჯავასკრიპტის ფუნქციაში
  • რა არის indexOf() მეთოდი ჯავასკრიპტში?
  • რა არის charAt() მეთოდი ჯავასკრიპტში?
  • რა არის push() მეთოდი ჯავასკრიპტში?
  • რა არის pop() მეთოდი ჯავასკრიპტში?
  • რა არის unshift() მეთოდი ჯავასკრიპტში?
  • რა არის shift() მეთოდი ჯავასკრიპტში?
  • Ternary ოპერატორი ჯავასკრიპტში (JavaScript)
  • JavaScript-ის bitwise (ბიტვაიზ) ოპერატორები
  • Nullish Coalescing Operator (??) ჯავასკრიპტში ქართულად
  • JavaScript-ის პრიმიტიული ტიპები (Primitive types)
  • პრიმიტიული და რეფერენს ტიპების შედარება
  • JavaScript-ის closures-ები
  • JSDocs - დოკუმენტაციის წერა ჯავასკრიპტში
პროგრამირების კურსები
HTML, CSSJavaScriptTypeScriptAngularReactJSNodeJSC
გამომყევი
mipov.net/valdo

© val-do.com 2026 წელი - ყველა უფლება დაცულია

ვერსია 0.1.55