You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/sw/2-js-basics/2-functions-methods
localizeflow[bot] e00c0e2d71
chore(i18n): sync translations with latest source changes (chunk 10/20, 100 files)
1 month ago
..
README.md chore(i18n): sync translations with latest source changes (chunk 10/20, 100 files) 1 month ago
assignment.md 🌐 Update translations via Co-op Translator 4 months ago

README.md

Misingi ya JavaScript: Mbinu na Zana

JavaScript Basics - Functions

Sketchnote na Tomomi Imura

journey
    title Safari Yako ya Kazi za JavaScript
    section Msingi
      Function Syntax: 5: You
      Calling Functions: 4: You
      Parameters & Arguments: 5: You
    section Dhana za Juu Zaidi
      Return Values: 4: You
      Default Parameters: 5: You
      Function Composition: 4: You
    section JavaScript ya Kisasa
      Arrow Functions: 5: You
      Anonymous Functions: 4: You
      Higher-Order Functions: 5: You

Mtihani Kabla ya Mhodhi

Pre-lecture quiz

Kuandika msimbo huo huo mara nyingi ni moja ya hasa za kawaida katika uundaji programu. Zana (functions) huboresha tatizo hili kwa kukuwezesha kufunga msimbo kuwa vitengo vinavyoweza kutumika tena. Fikiria zana kama sehemu za viwango zilizoifanya mstari wa mkusanyiko wa Henry Ford kuwa ya mapinduzi mara tu unapotengeneza kipengele kinachotegemewa, unaweza kukitumia popote unapohitaji bila kujenga upya kutoka mwanzo.

Zana zinakuwezesha kufunga vipande vya msimbo ili uweze kuvitumia tena katika programu yako nzima. Badala ya kunakili na kubandika mantiki ile ile kila mahali, unaweza kuunda zana mara moja na kuitisha inapohitajika. Njia hii hufanya msimbo wako kuwa na mpangilio mzuri na kufanya masasisho kuwa rahisi zaidi.

Katika somo hili, utajifunza jinsi ya kuunda zana zako mwenyewe, kupitisha taarifa kwao, na kupata matokeo mazuri. Utaelewa tofauti kati ya zana na mbinu, ujifunze mbinu za kisasa za herufi, na kuona jinsi zana zinaweza kufanya kazi pamoja na zana nyingine. Tutajenga dhana hizi hatua kwa hatua.

Methods and Functions

🎥 Bonyeza picha hapo juu kwa video kuhusu mbinu na zana.

Unaweza kuchukua somo hili kwenye Microsoft Learn!

mindmap
  root((JavaScript Functions))
    Basic Concepts
      Declaration
        Traditional syntax
        Arrow function syntax
      Calling
        Using parentheses
        Parentheses required
    Parameters
      Input Values
        Multiple parameters
        Default values
      Arguments
        Values passed in
        Can be any type
    Return Values
      Output Data
        return statement
        Exit function
      Use Results
        Store in variables
        Chain functions
    Advanced Patterns
      Higher-Order
        Functions as parameters
        Callbacks
      Anonymous
        No name needed
        Inline definition

Zana

Zana ni kipande cha msimbo chenye kujitegemea kinachotekeleza kazi maalum. Inahifadhi mantiki ambayo unaweza kuitekeleza kila inapohitajika.

Badala ya kuandika msimbo ule ule mara nyingi katika programu yako, unaweza kuipakia ndani ya zana na kuitisha zana hiyo kila unaponihitaji. Njia hii hufanya msimbo wako usafi na kufanya masasisho kuwa rahisi. Fikiria changamoto ya matengenezo kama unahitaji kubadilisha mantiki iliyosambaa sehemu 20 tofauti za msimbo wako.

Kukataa majina yako kwa usahihi ni muhimu. Zana iliyo na jina zuri inaelezea kusudi lake kwa uwazi unapomuona cancelTimer(), unaelewa mara moja inavyofanya, kama vile kitufe kilicho na lebo wazi kinakuambia hasa kile kitakachotokea unapokibonyeza.

Kuunda na kuitisha zana

Hebu tuchunguze jinsi ya kuunda zana. Sarufi inafuata muundo thabiti:

function nameOfFunction() { // ufafanuzi wa kazi
 // ufafanuzi/maumbo ya kazi
}

Hebu tugawanye hii:

  • Neno function linamweleza JavaScript "Haya, ninaunda zana!"
  • nameOfFunction ni mahali unapoipa zana yako jina linaloelezea
  • Kipengele cha mabano () ni mahali pa kuongeza vigezo (tutafikia hapo hivi karibuni)
  • Mabano ya mviringo {} yana msimbo halisi unaotekelezwa unapoitisha zana

Tengeneza zana rahisi ya salamu ili kuona hili kwa vitendo:

function displayGreeting() {
  console.log('Hello, world!');
}

Zana hii inanukuu "Hello, world!" kwenye console. Ukimaliza kuitengeneza, unaweza kuitumia mara ngapi unavyotaka.

Ili kuitekeleza (au "kuitisha") zana yako, andika jina lake likifuatiwa na mabano. JavaScript inaruhusu kuainisha zana yako kabla au baada ya kuitisha engine ya JavaScript itashughulikia mpangilio wa utekelezaji.

// kupiga simu kwa kazi yetu
displayGreeting();

Unaporun mstari huu, unatenda msimbo wote ndani ya zana yako displayGreeting, ikionyesha "Hello, world!" kwenye console ya kivinjari chako. Unaweza kuitisha zana hii mara nyingi.

🧠 Ukaguzi wa Misingi ya Zana: Kujenga Zana Zako za Kwanza

Hebu tazama jinsi unavyohisi kuhusu zana za msingi:

  • Unaweza kueleza kwa nini tunatumia mabano {} katika maelezo ya zana?
  • Nini hutokea ikiwa utaandika displayGreeting bila mabano?
  • Kwa nini unaweza kutaka kuitisha zana ile ile mara nyingi?
flowchart TD
    A["✏️ Eleza Kazi"] --> B["📦 Funga Msimbo"]
    B --> C["🏷️ Mpa Jina"]
    C --> D["📞 Piga Unapotakiwa"]
    D --> E["🔄 Tumia Tena Popote"]
    
    F["💡 Manufaa"] --> F1["Hakuna kurudia msimbo"]
    F --> F2["Rahisi kudumisha"]
    F --> F3["Mpangilio wazi"]
    F --> F4["Upimaji rahisi"]
    
    style A fill:#e3f2fd
    style E fill:#e8f5e8
    style F fill:#fff3e0

Kumbuka: Umekuwa ukitumia mbinu katika masomo haya yote. console.log() ni mbinu kwa msingi, zana inayomilikiwa na kitu cha console. Tofauti kuu ni kwamba mbinu zinahusishwa na vitu, wakati zana zinajitegemea. Waendelezaji wengi hutumia maneno haya kwa kubadilishana katika mazungumzo ya kawaida.

Mbinu bora za zana

Hapa kuna vidokezo vidogo vya kukusaidia kuandika zana nzuri:

  • Pata majina ya kueleweka na ya kuelezea wewe mwenyewe utajisikia shukrani baadaye!
  • Tumia camelCasing kwa majina ya maneno mengi (kama calculateTotal badala ya calculate_total)
  • Hifadhi kila zana iangalie kufanikisha jambo moja vizuri

Kupitisha taarifa kwa zana

Zana yetu displayGreeting ina kikomo inaweza kuonyesha tu "Hello, world!" kwa kila mtu. Vigezo vinaturuhusu kufanya zana ziwe na ufanisi zaidi.

Vigezo hufanya kama vifunga ambapo unaweza kuweka thamani tofauti kila unapotumia zana. Kwa njia hii, zana hiyo hiyo inaweza kufanya kazi na taarifa tofauti kila kuitisha.

Unaorodhesha vigezo ndani ya mabano unapofafanua zana yako, ukitenganisha vigezo vingi na koma:

function name(param, param2, param3) {

}

Kila kigezo hutenda kama kivutio cha nafasi mtu atakapoitisha zana yako, atatoa thamani halisi zinazowekwa sehemu hizi.

Hebu tubadilishe zana ya salamu ya kupokea jina la mtu:

function displayGreeting(name) {
  const message = `Hello, ${name}!`;
  console.log(message);
}

Angalia jinsi tunavyotumia backticks (`) na ${} kuweka jina moja kwa moja ndani ya ujumbe wetu hii huitwa templet literal, na ni njia rahisi ya kujenga misemo yenye vigezo vimechanganywa.

Sasa tunapoitisha zana yetu, tunaweza kupitisha jina lolote:

displayGreeting('Christopher');
// inaonyesha "Hello, Christopher!" wakati inapoendeshwa

JavaScript huchukua mfurushi wa maneno 'Christopher', kuuweka katika kigezo name, na kutengeneza ujumbe wa kibinafsi "Hello, Christopher!"

flowchart LR
    A["🎯 Kuitwa kwa Kazi"] --> B["📥 Vigezo"]
    B --> C["⚙️ Mwili wa Kazi"]
    C --> D["📤 Matokeo"]
    
    A1["displayGreeting('Alice')"] --> A
    B1["jina = 'Alice'"] --> B
    C1["Template literal\n\`Hujambo, \${name}!\`"] --> C
    D1["'Hujambo, Alice!'"] --> D
    
    E["🔄 Aina za Vigezo"] --> E1["Mizungumzo"]
    E --> E2["Nambari"]
    E --> E3["Maandishi ya kweli au potofu"]
    E --> E4["Vitu"]
    E --> E5["Kazi"]
    
    style A fill:#e3f2fd
    style C fill:#e8f5e8
    style D fill:#fff3e0
    style E fill:#f3e5f5

Thamani za chaguo-msingi

Je, tungependa kufanya baadhi ya vigezo kuwa hiari? Hapo ndipo thamani za chaguo-msingi zinapokuja muhimu!

Tuseme tunataka watu waweze kubadilisha neno la salamu, lakini ikiwa hawataeleza lolote, tutatumia "Hello" kama msaada. Unaweza kuweka thamani za chaguo-msingi kwa kutumia alama ya usawa, kama vile kuweka thamani ya variable:

function displayGreeting(name, salutation='Hello') {
  console.log(`${salutation}, ${name}`);
}

Hapa, name bado ni la lazima, lakini salutation ina thamani ya ziada ya 'Hello' ikiwa hakuna atakayetoa salamu tofauti.

Sasa tunaweza kuitisha zana hii kwa njia mbili tofauti:

displayGreeting('Christopher');
// inaonyesha "Hello, Christopher"

displayGreeting('Christopher', 'Hi');
// inaonyesha "Hi, Christopher"

Katika utekelezaji wa kwanza, JavaScript inatumia "Hello" chaguo-msingi kwa sababu hatukuweka salamu yoyote. Katika utekelezaji wa pili, inatumia salamu yetu ya "Hi" badala yake. Uwezo huu hufanya zana ziwe za kubadilika kwa hali tofauti.

🎛️ Ukaguzi wa Ustadi wa Vigezo: Kufanya Zana Ziwe na Uwezo wa Kubadilika

Jaribu ufahamu wako wa vigezo:

  • Nini tofauti kati ya kigezo na hoja?
  • Kwa nini thamani za chaguo-msingi ni muhimu katika uundaji programu wa kweli?
  • Unaweza kutabiri nini hutokea ikiwa utapitisha hoja nyingi zaidi kuliko vigezo?
stateDiagram-v2
    [*] --> NoParams: function greet() {}
    [*] --> WithParams: function greet(name) {}
    [*] --> WithDefaults: function greet(name, greeting='Hi') {}
    
    NoParams --> Static: Matokeo yanayofanana kila mara
    WithParams --> Dynamic: Hubadilika kulingana na ingizo
    WithDefaults --> Flexible: Ubinafsishaji wa hiari
    
    Static --> [*]
    Dynamic --> [*]
    Flexible --> [*]
    
    note right of WithDefaults
        Njia inayobadilika zaidi
        Inakubaliana nyuma
    end note

Ushauri wa kitaalamu: Vigezo vya chaguo-msingi hufanya zana zako ziwe rafiki kwa mtumiaji. Watumiaji wanaweza kuanza haraka kwa thamani za kawaida, lakini bado kubadilisha inapohitajika!

Thamani za kurudishiwa

Hadi sasa zana zetu zimekuwa zikichapisha ujumbe kwenye console, lakini je, ungetaka zana ikokotoe kitu na ikurudishie matokeo?

Hapo ndipo thamani za kurudishiwa zinapokuja. Badala ya kuonyesha jambo tu, zana inaweza kurudisha thamani ambayo unaweza kuhifadhi katika variable au kuitumia sehemu nyingine za msimbo wako.

Ili kurudisha thamani, tumia neno return linalo fuatwa na kile unachotaka kurudisha:

return myVariable;

Hapa kuna jambo muhimu: zana inapogonga kauli ya return, mara moja hukoma kutekeleza na kurudisha thamani hiyo kwa mtumiaji aliyoitisha.

Turekebishe zana yetu ya salamu kurudisha ujumbe badala ya kuuchapisha:

function createGreetingMessage(name) {
  const message = `Hello, ${name}`;
  return message;
}

Sasa badala ya kuchapisha salamu, zana hii inatengeneza ujumbe na kuturudishia.

Ili kutumia thamani iliyorejeshwa, tunaweza kuihifadhi katika variable kama thamani nyingine yoyote:

const greetingMessage = createGreetingMessage('Christopher');

Sasa greetingMessage ina "Hello, Christopher" na tunaweza kuitumia mahali popote kwenye msimbo wetu kuionyesha kwenye ukurasa wa wavuti, kuingiza barua pepe, au kuipitisha kwa zana nyingine.

flowchart TD
    A["🔧 Uchakataji wa Kazi"] --> B{"kauli ya kurudi?"}
    B -->|Ndiyo| C["📤 Thamani ya Kurudisha"]
    B -->|Hapana| D["📭 Rudisha haijaainishwa"]
    
    C --> E["💾 Hifadhi katika Kigezo"]
    C --> F["🔗 Tumia katika Kauli"]
    C --> G["📞 Pitia kwa Kazi"]
    
    D --> H["⚠️ Kawaida haifai"]
    
    I["📋 Matumizi ya Thamani ya Kurudisha"] --> I1["Hesabu matokeo"]
    I --> I2["Thibitisha ingizo"]
    I --> I3["Badilisha data"]
    I --> I4["Tengeneza vitu"]
    
    style C fill:#e8f5e8
    style D fill:#ffebee
    style I fill:#e3f2fd

🔄 Ukaguzi wa Thamani za Kurudishiwa: Kupata Matokeo

Pima ufahamu wako wa thamani za kurudishiwa:

  • Nini hutokea kwa msimbo baada ya kauli ya return katika zana?
  • Kwa nini kurudisha thamani ni bora zaidi kuliko kuchapisha tu kwenye console?
  • Je, zana inaweza kurudisha aina tofauti za thamani (mfuatano wa maneno, nambari, boolean)?
pie title "Aina za Thamani za Kurudisha Zilizotumika"
    "Mikondo" : 30
    "Nambari" : 25
    "Vitu" : 20
    "Booleani" : 15
    "Safu" : 10

Uelewa muhimu: Zana zinazorudisha thamani ni za kubadilika kwa sababu mtumiaji anaamua kufanya nini na matokeo. Hii hufanya msimbo wako kuwa wa moduli na unavyoweza kutumika tena!

Zana kama vigezo kwa zana nyingine

Zana zinaweza kupitishwa kama vigezo kwa zana nyingine. Ingawa dhana hii inaweza kuonekana ngumu mwanzoni, ni sifa yenye nguvu inayowezesha mifumo flexible ya uundaji programu.

Mfumo huu ni wa kawaida sana wakati unataka kusema "wakati jambo fulani litokee, fanya jambo hili." Kwa mfano, "wakati kengele inamaliza, endesha msimbo huu" au "wakati mtumiaji anakibonyeza kitufe, ita zana hii."

Tazama setTimeout, ambayo ni zana ya ndani inayosubiri muda fulani na kisha kuendesha msimbo. Tunahitaji kuambia ni msimbo gani waendeshe hii ni mfano bora wa kupitisha zana!

Jaribu msimbo huu baada ya sekunde 3, utaona ujumbe:

function displayDone() {
  console.log('3 seconds has elapsed');
}
// thamani ya kipimaji muda iko katika millisekunde
setTimeout(displayDone, 3000);

Angalia jinsi tunavyopitisha displayDone (bila mabano) kwa setTimeout. Hatuwafanyi kuitisha zana sisi peke yetu tunaikabidhi kwa setTimeout na kusema "iite ndani ya sekunde 3."

Zana zisizo na majina

Wakati mwingine unahitaji zana kwa jambo moja tu na hutaki kuipa jina. Fikiria kama utatumia zana mara moja tu, kwa nini ujaze msimbo wako na jina ziada?

JavaScript hukuwezesha kuunda zana zisizo na majina zana zisizo na majina ambazo unaweza kuziainisha mahali unapotakiwa.

Hapa kuna jinsi tunaweza kuandika upya mfano wetu wa kengele tukitumia zana isiyo na jina:

setTimeout(function() {
  console.log('3 seconds has elapsed');
}, 3000);

Hii inapatikana matokeo sawa, lakini zana imefafanuliwa moja kwa moja ndani ya wito wa setTimeout, kuondoa hitaji la tangazo la zana tofauti.

Zana za mshale mpana (Fat arrow functions)

JavaScript ya kisasa ina njia fupi zaidi ya kuandika zana inayoitwa arrow functions. Zinatumia => (inavyoonekana kama mshale umeielewa?) na ni maarufu sana kwa waendelezaji.

Zana za mshale hukuruhusu kuacha neno function na kuandika msimbo wenye ufanisi zaidi.

Hapa ni mfano wa kengele ukitumia zana ya mshale:

setTimeout(() => {
  console.log('3 seconds has elapsed');
}, 3000);

() ni mahali pa vigezo (hali hii ni tupu), kisha mshale =>, na mwili wa zana ndani ya mabano. Hii hutoa utendakazi uleule kwa sarufi fupi zaidi.

flowchart LR
    A["📝 Mitindo ya Function"] --> B["Ya Kawaida"]
    A --> C["Upinde"]
    A --> D["Isiyojulikana"]
    
    B --> B1["function name() {}"]
    B --> B2["Iliyopandishwa"]
    B --> B3["Iliyopangwa"]
    
    C --> C1["const name = () => {}"]
    C --> C2["Msamiati mfupi"]
    C --> C3["Mtindo wa kisasa"]
    
    D --> D1["function() {}"]
    D --> D2["Bila jina"]
    D --> D3["Matumizi ya mara moja"]
    
    E["⏰ Wakati wa Kutumia"] --> E1["Ya Kawaida: Functions zinazoweza kutumika tena"]
    E --> E2["Upinde: Callbacks fupi"]
    E --> E3["Isiyojulikana: Washughulikiaji wa matukio"]
    
    style A fill:#e3f2fd
    style B fill:#e8f5e8
    style C fill:#fff3e0
    style D fill:#f3e5f5
    style E fill:#e0f2f1

Wakati wa kutumia kila mbinu

Ni lini unapaswa kutumia kila njia? Mwelekeo wa vitendo: ikiwa utatumia zana mara nyingi, ipa jina na uiainishe tofauti. Ikiwa ni kwa matumizi maalum mara moja, fikiria zana isiyo na jina. Zana za mshale na sarufi ya jadi zote ni chaguo halali, ingawa zana za mshale zinaenea sana katika misimbo ya JavaScript ya kisasa.

🎨 Ukaguzi wa Mtindo wa Zana: Kuchagua Sarufi Sahihi

Jaribu ufahamu wako wa sarufi:

  • Ni lini unaweza kupendelea zana za mshale badala ya sarufi ya jadi za zana?
  • Faida kuu ya zana zisizo na majina ni nini?
  • Unaweza kufikiria hali ambapo zana iliyo na jina ni bora kuliko isiyo na jina?
quadrantChart
    title Matrii ya Uamuzi wa Uchaguzi wa Kazi
    x-axis Rahisi --> Ngumu
    y-axis Matumizi ya Mara Moja --> Yanayoweza Kutumika Mara Nyingi
    quadrant-1 Arrow Functions
    quadrant-2 Named Functions
    quadrant-3 Anonymous Functions
    quadrant-4 Traditional Functions
    
    Event Handlers: [0.3, 0.2]
    Utility Functions: [0.7, 0.8]
    Callbacks: [0.2, 0.3]
    Class Methods: [0.8, 0.7]
    Mathematical Operations: [0.4, 0.6]

Mwelekeo wa kisasa: Zana za mshale zinakuwa chaguo la asili kwa waendelezaji wengi kwa sababu ya sarufi fupi, lakini zana za jadi bado zina nafasi zao!


🚀 Changamoto

Je, unaweza kuelezea tofauti kati ya zana na mbinu kwa sentensi moja? Jaribu sasa!

Changamoto ya Wakala wa GitHub Copilot 🚀

Tumia hali ya Wakala kukamilisha changamoto ifuatayo:

Maelezo: Unda maktaba ya zana za hisabati inayoonyesha dhana mbalimbali za zana zilizojadiliwa katika somo hili, ikijumuisha vigezo, thamani za chaguo-msingi, thamani za kurudishiwa, na zana za mshale.

Maelekezo: Unda faili la JavaScript linaloitwa mathUtils.js lenye zana zifuatazo:

  1. Zana add inayopitisha vigezo viwili na kurudisha jumla yao
  2. Zana multiply ikiwa na thamani za chaguo-msingi za vigezo (kigezo cha pili kina thamani ya asili 1)
  3. Zana ya mshale square inayopitisha nambari na kurudisha mraba wake
  4. Zana calculate inayokubali zana nyingine kama kigezo na nambari mbili, kisha kutumia zana hiyo kwa nambari hizo
  5. Onyesha kuitisha kila zana kwa kesi za majaribio zinazofaa

Jifunze zaidi kuhusu hali ya wakala hapa.

Mtihani Baada ya Mhodhi

Post-lecture quiz

Mapitio & Kujisomea

Inafaa kusoma zaidi kuhusu zana za mshale, kwani zinazidi kutumika katika misimbo ya kisasa. Fanya mazoezi ya kuandika zana, kisha uiongeze tena kwa sarufi hii.

Kazi ya Nyumbani

Burudika na Zana


🧰 Muhtasari wa Kikokotoo cha Zana Zako za JavaScript

graph TD
    A["🎯 Kazi za JavaScript"] --> B["📋 Ufafanuzi wa Kazi"]
    A --> C["📥 Vigezo"]
    A --> D["📤 Thamani za Kurudi"]
    A --> E["🎨 Sintaksia ya Kisasa"]
    
    B --> B1["function name() {}"]
    B --> B2["Kutoa majina ya kueleweka"]
    B --> B3["Vizuizi vya msimbo vinavyoweza kutumika tena"]
    
    C --> C1["Data za kuingiza"]
    C --> C2["Thamani za msingi"]
    C --> C3["Vigezo vingi"]
    
    D --> D1["kauli ya kurudi"]
    D --> D2["Kutoka kazi"]
    D --> D3["Pitia data kurudi"]
    
    E --> E1["Kazi za mshale: () =>"]
    E --> E2["Kazi zisizo na majina"]
    E --> E3["Kazi za daraja la juu"]
    
    F["⚡ Manufaa Muhimu"] --> F1["Uwezekano wa kutumia msimbo tena"]
    F --> F2["Mpangilio bora"]
    F --> F3["Upimaji rahisi"]
    F --> F4["Muundo wa modular"]
    
    style A fill:#e3f2fd
    style B fill:#e8f5e8
    style C fill:#fff3e0
    style D fill:#f3e5f5
    style E fill:#e0f2f1
    style F fill:#fce4ec

🚀 Muda wa Ukamilishaji wa Ustadi wa Zana za JavaScript Yako

Unachoweza Kufanya Katika Dakika 5 Zijazo

  • Andika zana rahisi inayorudisha nambari unayopenda

  • Unda zana yenye vigezo viwili inayojumlisha vigezo hivyo pamoja

  • Jaribu kubadilisha kazi ya kawaida kuwa sintaksia ya kazi ya mshale

  • Fanya mazoezi ya changamoto: eleza tofauti kati ya kazi na mbinu

🎯 Unachoweza Kufanikisha Saa Hii

  • Kompleti jaribio la baada ya somo na kupitia dhana zozote zinazochanganya
  • Jenga maktaba ya zana za hisabati kutoka changamoto ya GitHub Copilot
  • Unda kazi inayotumia kazi nyingine kama parameta
  • Fanya mazoezi ya kuandika kazi zilizo na parameta za chaguo-msingi
  • Jaribu tempeleti za maneno katika thamani za kurudisha kazi

📅 Utaalamu Wako wa Kazi Kwa Wiki Nzima

  • Kompleti kazi ya "Mchezo na Kazi" kwa ubunifu
  • Rekebisha baadhi ya msimbo unaorudiwa uliouandika kuwa kazi zinazotumika tena
  • Jenga kalkuleta ndogo ukitumia kazi pekee (hakuna vigezo vya ulimwengu)
  • Fanya mazoezi ya kazi za mshale kwa kutumia mbinu za safu kama map() na filter()
  • Unda mkusanyiko wa kazi za zana kwa kazi za kawaida
  • Soma kazi za ngazi ya juu na dhana za programu za kazi

🌟 Mabadiliko Yako Kwa Mwezi Mzima

  • Tawala dhana za juu za kazi kama closures na scope
  • Jenga mradi unaotumia sana muundo wa kazi
  • Changia kwenye chanzo wazi kwa kuboresha hati za kazi
  • Fundisha mtu mwingine kuhusu kazi na mtindo tofauti wa sintaksia
  • Chunguza mitazamo ya programu za kazi katika JavaScript
  • Unda maktaba binafsi ya kazi zinazotumika tena kwa miradi ya baadaye

🏆 Ukaguzi wa Mwisho wa Bingwa wa Kazi

Sherehekea utaalamu wako wa kazi:

  • Ni kazi gani yenye manufaa zaidi uliyounda hadi sasa?
  • Je, kujifunza kuhusu kazi kumeathiri vipi mtazamo wako juu ya upangaji wa msimbo?
  • Ni sintaksia gani ya kazi unapendelea na kwa nini?
  • Ni tatizo gani halisi la dunia ungeweza kulitatua kwa kuandika kazi?
journey
    title Maendeleo ya Kujiamini Kwako Katika Kazi za Kazi
    section Leo
      Kushangaa Sintaksia: 3: You
      Kuelewa Misingi: 4: You
      Kuandika Kazi Rahisi: 5: You
    section Wiki Hii
      Kutumia Vigezo: 4: You
      Kurudisha Thamani: 5: You
      Sintaksia ya Kisasa: 5: You
    section Mwezi Ujao
      Uundaji wa Kazi: 5: You
      Mifumo Changamfu: 5: You
      Kufundisha Wengine: 5: You

🎉 Umeweza sana kuhusu mojawapo ya dhana zenye nguvu zaidi za programu! Kazi ni msingi wa programu kubwa. Kila programu utakayojenga kutumia kazi kupanga, kutumia tena, na kuunda muundo wa msimbo. Sasa unaelewa jinsi ya kufunga mantiki katika vipengele vinavyoweza kutumika tena, na kufanya wewe kuwa mpogozaji wa msimbo mwenye ufanisi zaidi. Karibu kwenye dunia ya programu ya moduli! 🚀


Tangazo la Kukataa: Hati hii imetafsiriwa kwa kutumia huduma ya tafsiri ya AI Co-op Translator. Ingawa tunajitahidi kuhakikisha usahihi, tafadhali fahamu kwamba tafsiri za kiotomatiki zinaweza kuwa na makosa au kasoro. Hati ya asili katika lugha yake ya asili inapaswa kuzingatiwa kama chanzo cha zaidi kuaminiwa. Kwa taarifa muhimu, tafsiri ya mtaalamu wa lugha ya binadamu inapendekezwa. Hatubeba dhamana yoyote kwa kutoelewana au tafsiri potofu zinazotokana na matumizi ya tafsiri hii.