⊗jsPmMCLb 505 of 505 menu

JavaScriptda Yopilishlar orqali Kutubxonalar

JavaScript-da ko'pincha kutubxonalar yaratiladi, ular boshqa dasturchilar foydalashi uchun funksiyalar to'plamidan iborat bo'ladi.

Bunday kutubxonalar odatda yopilishlar orqali modullarga o'raladi. Buning sababi shundaki, kutubxona ulanganda tashqi dunyoda iloji boricha kamroq funksiyalar paydo bo'lsin.

Odatda har bir kutubxona tashqi dunyoda faqat bitta o'zgaruvchi yaratishga harakat qiladi - kutubxona funksiyalari bilan ob'ekt. Shu bilan birga kutubxona kodining ichida ba'zi funksiyalar asosiy, ba'zilari esa yordamchi bo'ladi. Shubhasiz, biz tashqi dunyoga faqat kerakli funksiyalarni eksport qilmoqchimiz, eksport qilinadigan ob'ektni yordamchi funksiyalar bilan to'ldirmaslik.

Keling, misol orqali ko'rib chiqaylik. Faraz qilaylik, bizda quyidagi funksiyalar to'plami mavjud bo'lib, ularni kutubxonaga aylantirmoqchimiz:

function square(num) { return num ** 2; } function cube(num) { return num ** 3; } function avg(arr) { return sum(arr, 1) / arr.length; } function digitsSum(num) { return sum(String(num).split('')); } // yordamchi funksiya function sum(arr) { let res = 0; for (let elem of arr) { res += +elem; } return res; }

Keling, funksiyalarimizni modul shaklida rasmiylashtiramiz:

;(function() { function square(num) { return num ** 2; } function cube(num) { return num ** 3; } function avg(arr) { return sum(arr, 1) / arr.length; } function digitsSum(num) { return sum(String(num).split('')); } // yordamchi funksiya function sum(arr) { let res = 0; for (let elem of arr) { res += +elem; } return res; } })();

Endi esa yordamchi funksiyadan tashqari barcha funksiyalarni eksport qilamiz:

;(function() { function square(num) { return num ** 2; } function cube(num) { return num ** 3; } function avg(arr) { return sum(arr, 1) / arr.length; } function digitsSum(num) { return sum(String(num).split('')); } // yordamchi funksiya function sum(arr) { let res = 0; for (let elem of arr) { res += +elem; } return res; } window.math = {square, cube, avg, digitsSum}; })();

Faraz qilaylik, bizda index.html HTML sahifasi mavjud:

<html> <head> <script> </script> </head> </html>

Keling, unga kutubxonamizni ulaymiz:

<html> <head> <script src="math.js"></script> <script> </script> </head> </html>

Keling, kutubxonamizdagi funksiyalardan foydalanamiz:

<html> <head> <script src="math.js"></script> <script> alert(math.avg([1, 2, 3]) + math.square()); </script> </head> </html>

Quyidagi kod berilgan:

function avg1(arr) { return sum(arr, 1) / arr.length; } function avg2(arr) { return sum(arr, 2) / arr.length; } function avg3(arr) { return sum(arr, 3) / arr.length; } // yordamchi funksiya function sum(arr, pow) { let res = 0; for (let elem of arr) { res += elem ** pow; } return res; }

Ushbu kodni modul shaklida rasmiylashtiring. Yordamchi funksiyadan tashqari barcha funksiyalarni tashqariga eksport qiling.

underscore kutubxonasini o'rganing. O'zingizning shunga o'xshash kutubxonangizni yarating, unda asl kutubxonaning 5-10 ta funksiyasini takrorlang.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish