⊗jsPmMCLb 505 of 505 menu

Maktaba kupitia Kufunga kwa Kazi katika JavaScript

Mara nyingi katika JavaScript huundwa maktaba, zinazowakilisha seti za kazi kwa matumizi ya programu wengine.

Maktaba kama hizi kwa kawaida hufungwa ndani ya moduli kupitia kufunga kwa kazi. Hii inafanywa ili wakati wa kuunganisha maktaba ulimwenguni wa nje kutoke kazi chache iwezekanavyo.

Kwa kawaida kila maktaba hujitahidi kuunda ulimwenguni wa nje kutofautisha moja tu - kitu chenye kazi za maktaba. Wakati huo huo ndani ya msimbo wa maktaba sehemu ya kazi ni kuu, na sehemu - saidizi. Ni wazi, kwamba tunataka kusafirisha kwenda nje kazi tu muhimu, bila kuchafua kitu kilichosafirishwa kwa kazi saidizi.

Wacha tuangalie kwa mfano. Wacha tuseme tuna seti ifuatayo ya kazi, ambazo sisi tungependa kuzibadilisha kuwa maktaba:

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('')); } // kazi saidizi function sum(arr) { let res = 0; for (let elem of arr) { res += +elem; } return res; }

Wacha tuwasilishe kazi zetu kwa namna ya moduli:

;(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('')); } // kazi saidizi function sum(arr) { let res = 0; for (let elem of arr) { res += +elem; } return res; } })();

Na sasa tusafirishe kazi zote, isipokuwa saidizi:

;(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('')); } // kazi saidizi function sum(arr) { let res = 0; for (let elem of arr) { res += +elem; } return res; } window.math = {square, cube, avg, digitsSum}; })();

Wacha tuseme tuna ukurasa wa HTML index.html:

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

Wacha tuunganishe maktaba yetu nayo:

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

Wacha tutumie kazi kutoka kwa maktaba yetu:

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

Kuna msimbo ufuatao:

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; } // kazi saidizi function sum(arr, pow) { let res = 0; for (let elem of arr) { res += elem ** pow; } return res; }

Wasilisha msimbo huu kwa namna ya moduli. Safirisha nje kazi zote, isipokuwa saidizi.

Jifunze maktaba ya underscore. Fanya maktaba yako sawa, ukirudia ndani yake 5-10 kazi za asili maktaba.

Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa