JavaScript funktiot

JavaScript-funktiot on suunniteltu suorittamaan tiettyjä tehtäviä.

JavaScript-funktiot suoritetaan, kun ne kutsutaan jossain koodissa.

esimerkki

function myFunction(p1, p2) {
    return p1 * p2;              // Tämä funktio palauttaa p1 ja p2:n tuotannon
}

Kokeile itse

JavaScript-funktioiden syntaksi

JavaScript-funktiot suoritetaan function määritellään avainsanalla, jonka jälkeen onFunktion nimija sulkeiden () kanssa.

Funktion nimi voi sisältää kirjaimia, numeroita, alaviivoja ja dollaria (säännöt ovat samat kuin muuttujien nimissä).

Silmukat voivat sisältää pilkkueraa parametreja:

(Parametri 1, Parametri 2, ...)

Koodi, jonka funktio suorittaa, sijoitetaan sisään kulmiin:{}

function name(Parametri 1, Parametri 2, Parametri 3) {
    On koodi, joka suoritetaan.
}

Funktioargumentit (Function parameters)On nimet, jotka on lueteltu funktioiden määrittelyssä.

Funktioargumentit (Function arguments)On todellinen arvo, jonka funktio vastaanottaa kutsuttaessa sitä:Arvo

Funktiolla on paikallisia muuttujia parametreina.

Muissa ohjelmointikielissä funktio vastaa ohjelmaa (Procedure) tai aliohjelmaa (Subroutine).

Funktio kutsu

Funktion sisällä oleva koodi suoritetaan, kun toinen koodi kutsuu funktiota:

  • Kun tapahtuma tapahtuu (kun käyttäjä napsauttaa painiketta)
  • Kun JavaScript-koodi kutsutaan
  • automaattinen (itsekutsuva)

Opit tässä kurssissa lisää funktiokutsuista.

funktio palauttaa

Kun JavaScript saavuttaa return lauseen jälkeen.

Jos funktio kutsutaan jossain lauseessa, JavaScript palauttaa suorittamisen kutsumisen jälkeen:

Funktiot yleensä laskevatpalautusarvoTämä palautettu arvo palautetaan kutsumiselle:

esimerkki

Laske kahden luvun tuotanto ja palauta tulos:

var x = myFunction(7, 8);        // Kutsutaan funktiota, ja palautettu arvo asetetaan x:hen
function myFunction(a, b) {
    return a * b;                // Funktio palauttaa a ja b:n tuotannon
}

x:n arvo tulee olemaan:

56

Kokeile itse

Miksi käyttää funktioita?

Voit käyttää koodia uudelleen käyttämällä sitä:

Voit antaa samalle funktiolle useita eri parametreja saadaksesi erilaisia tuloksia.

esimerkki

Muunna Fahrenheit-asteet Celsius-asteiksi:

function toCelsius(fahrenheit) {
    return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius(77);

Kokeile itse

() operaattori kutsuu funktiota

Käytä yllä olevaa esimerkkiä:toCelsius viitataan funktioon itsessään, mutta toCelsius() viitataan funktioiden tulokseen.

esimerkki

Kutsuttu funktio ilman () palauttaa funktioiden määrittelyn:

function toCelsius(fahrenheit) {
    return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius;

Kokeile itse

Funktiot muuttujina

Funktioiden käyttö on sama kuin muuttujien, kaikissa kaavoissa, asetuksissa ja laskelmissa.

esimerkki

Käytä muuttujia tallentaaksesi funktioiden arvot:

var x = toCelsius(77);
var text = "The temperature is " + x + " Celsius";

Voit käyttää funktioita suoraan muuttujana:

var text = "The temperature is " + toCelsius(77) + " Celsius";

Kokeile itse

Opit tässä kurssissa lisää funktioista.

lokaalimuuttujat

JavaScript-funktiosta määritetyt muuttujat tulevat olemaan funktionlokaalimuuttujat

lokaalit muuttujat ovat saatavilla vain funktion sisällä.

esimerkki

// Tämä koodi ei voi käyttää carName
function myFunction() {
    var carName = "Volvo";
    // Tämä koodi voi käyttää carName
}
// Tämä koodi ei voi käyttää carName

Kokeile itse

Koska paikalliset muuttujat voidaan tunnistaa vain niiden omassa funktiossa, voidaan käyttää samannimisiä muuttujia eri funktioissa.

Paikalliset muuttujat luodaan funktion alussa ja poistetaan käytöstä, kun funktio suoritetaan.

课外书

Lisätietoja JavaScript funktiottietoa, lue JavaScript-advancediopetuksen vastaavat sisällöt:

ECMAScript-funktioiden yleiskatsaus
Tämä luku selittää funktion käsitteen, miten ECMAScript ilmoittaa ja kutsuu funktioita sekä miten funktiot palauttavat arvoja.
ECMAScript-arguments-objekti
Tämä luku esittelee tätä objektin peruskäytön ja selittää, miten length-ominaisuutta käytetään funktion parametrien määrän mittaamiseen ja miten voidaan simuloida funktion ylikuormitus.
ECMAScript Function-objekti (luokka)
Tämä luku selittää, miten Function-luokkaa käytetään funktion luomiseen ja sitten esittelee Function-objektin ominaisuudet ja metodit.
ECMAScript-sulkujen (closure) käsite
Tämä luku selittää sulku (closure) käsitteen ja näyttää sinulle yksinkertaisen ja hieman monimutkaisemman kaksi esimerkkiä.