JavaScript-soittopyynnöt - mitä ovat JS: n soittopyynnöt ja kuinka niitä käytetään

Jos olet perehtynyt ohjelmointiin, tiedät jo mitä toimintoja tehdään ja miten niitä käytetään. Mutta mikä on takaisinsoittotoiminto? Soittotoiminnot ovat tärkeä osa JavaScriptiä, ja kun ymmärrät takaisinsoittojen toiminnan, sinusta tulee paljon parempi JavaScriptissa.

Joten tässä viestissä haluaisin auttaa sinua ymmärtämään mitä takaisinsoittotoiminnot ovat ja miten niitä voidaan käyttää JavaScriptissä käymällä läpi joitain esimerkkejä.

Mikä on soittopyyntö?

JavaScriptissä toiminnot ovat objekteja. Voimmeko siirtää esineitä funktioille parametreinä? Joo.

Joten voimme myös siirtää funktiot parametreina muille funktioille ja kutsua niitä ulkoisten toimintojen sisään. Kuulostaa monimutkaiselta? Haluan osoittaa, että alla olevassa esimerkissä:

function print(callback) { callback(); }

Print () -toiminto ottaa parametriksi toisen funktion ja kutsuu sen sisään. Tämä pätee JavaScriptiin ja kutsumme sitä "takaisinsoittoksi". Joten funktio, joka välitetään toiselle toiminnolle parametrina, on takaisinkutsutoiminto. Mutta se ei ole kaikki.

Voit myös katsoa videopuhelun soittotoiminnoista alla:

Miksi tarvitsemme soittopyyntöjä?

JavaScript suorittaa koodin peräkkäin ylhäältä alas järjestyksessä. On kuitenkin joitain tapauksia, joissa koodi suoritetaan (tai on suoritettava) sen jälkeen, kun jotain muuta tapahtuu eikä myöskään peräkkäin. Tätä kutsutaan asynkroniseksi ohjelmoinniksi.

Takaisinkutsut varmistavat, että toimintoa ei aiota suorittaa ennen tehtävän suorittamista, vaan se suoritetaan heti tehtävän suorittamisen jälkeen. Se auttaa meitä kehittämään asynkronista JavaScript-koodia ja suojaa meitä ongelmilta ja virheiltä.

Javascriptissa tapa luoda takaisinsoittofunktio on siirtää se parametrina toiselle toiminnolle ja kutsua se sitten takaisin heti, kun jotain on tapahtunut tai jokin tehtävä on suoritettu. Katsotaan miten ...

Kuinka luoda takaisinsoitto

Ymmärrän mitä olen selittänyt yllä, haluan aloittaa yksinkertaisella esimerkillä. Haluamme kirjata viestin konsoliin, mutta sen pitäisi olla siellä 3 sekunnin kuluttua.

const message = function() { console.log("This message is shown after 3 seconds"); } setTimeout(message, 3000);

JavaScriptissä on sisäänrakennettu menetelmä nimeltä setTimeout, joka kutsuu funktiota tai arvioi lausekkeen tietyn ajan kuluttua (millisekunteina). Joten tässä “viesti” -toimintoa kutsutaan 3 sekunnin kuluttua. (1 sekunti = 1000 millisekuntia)

Toisin sanoen viestitoimintoa kutsutaan, kun jotain on tapahtunut (3 sekunnin kuluttua tästä esimerkistä), mutta ei ennen. Joten viestitoiminto on esimerkki soittopyynnöstä.

Mikä on nimetön toiminto?

Vaihtoehtoisesti voimme määrittää funktion suoraan toisen funktion sisällä sen sijaan, että kutsuttaisiin sitä. Se näyttää tältä:

setTimeout(function() { console.log("This message is shown after 3 seconds"); }, 3000);

Kuten voimme nähdä, takaisinkutsutoiminnolla ei ole nimeä ja funktion määritelmää ilman nimeä JavaScriptissä kutsutaan nimettömäksi funktioksi. Tämä tekee täsmälleen saman tehtävän kuin yllä oleva esimerkki.

Takaisinsoitto nuolitoimintona

Halutessasi voit myös kirjoittaa saman soittopyynnön kuin ES6-nuolitoiminto, joka on uudentyyppinen toiminto JavaScriptissä:

setTimeout(() => { console.log("This message is shown after 3 seconds"); }, 3000);

Entä Tapahtumat?

JavaScript on tapahtumapohjainen ohjelmointikieli. Käytämme myös takaisinsoittotoimintoja tapahtumailmoituksiin. Oletetaan esimerkiksi, että haluamme käyttäjien napsauttavan painiketta:

Click here

Tällä kertaa näet viestin konsolissa vain, kun käyttäjä napsauttaa painiketta:

document.queryselector("#callback-btn") .addEventListener("click", function() { console.log("User has clicked on the button!"); });

Joten tässä valitaan ensin painike sen tunnuksella ja sitten lisätään tapahtumakuuntelija addEventListener-menetelmällä. Se vie 2 parametria. Ensimmäinen on sen tyyppi, napsautus, ja toinen parametri on takaisinkutsutoiminto, joka kirjaa viestin, kun painiketta napsautetaan.

Kuten näette, takaisinsoittofunktioita käytetään myös tapahtumailmoituksiin JavaScriptissä.

Paketoida

Takaisinsoittoja käytetään usein JavaScriptissä, ja toivon, että tämä viesti auttaa sinua ymmärtämään, mitä he todella tekevät ja kuinka työskennellä heidän kanssaan helpommin. Seuraavaksi voit oppia JavaScript-lupauksista, joka on samanlainen aihe, jonka olen selittänyt uudessa viestissä.

Jos haluat oppia lisää verkkokehityksestä, seuraa minua Youtubessa !

Kiitos, että luit!