JavaScript funktion

JavaScript-funktioner är designade för att utföra specifika uppgifter som kodblock.

JavaScript-funktioner körs när de anropas av annan kod.

exempel

function myFunction(p1, p2) {
    return p1 * p2;              // Funktionen returnerar produktet av p1 och p2
}

prova själv

JavaScript-funktions语法

JavaScript-funktioner definieras genom function definieras med nyckelord, följt avFunktionens namnoch parenteser ()。

Funktionens namn kan innehålla bokstäver, siffror, understrecksymboler och dollarsymboler (regler som variabelnamn).

Cirkelparentes kan innehålla parametrar separerade med komma:

(Parameter 1, Parameter 2, ...)

Koden som utförs av funktionen placeras inom klamrar:{}

function name(Parameter 1, Parameter 2, Parameter 3) {
    är den kod som ska köras
}

Funktionens argument (Function parameters)är de namn som listas i funktionens definition.

Funktionens argument (Function arguments)är det faktiska värde som funktionen tar emot när den anropas.Värde

I funktioner är parametrar lokala variabler.

I andra programmeringsspråk är funktioner liknande program (Procedure) eller underprogram (Subroutine).

Funktion anrop

Koden i funktionen körs när andra kod anropar funktionen:

  • När ett händelse inträffar (när användaren klickar på en knapp)
  • när JavaScript-kod anropas
  • automatiska (självkallande)

Du kommer att lära dig mer om funktioner anrop i denna tutorial.

funktionen returnerar

när JavaScript når return uttryck, funktionen stoppar exekveringen.

om en funktion anropas av ett uttryck, kommer JavaScript att "returnera" exekveringskoden efter anropet.

Funktioner räknar vanligtvis utreturvärdedenna returvärde returneras till anroparen:

exempel

Beräkna produkten av två tal och returnera resultatet:

var x = myFunction(7, 8);        // Anropar funktionen, returvärdet tilldelas till x
function myFunction(a, b) {
    return a * b;                // Funktionen returnerar produkten av a och b
}

x resultat kommer att vara:

56

prova själv

Varför använda funktioner?

Du kan återanvända kod: om du definierar kod en gång kan du använda den flera gånger.

Du kan skicka olika argument till samma funktion flera gånger för att få olika resultat.

exempel

Konvertera Fahrenheit till Celsius:

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

prova själv

() operatorn anropar funktionen

Använd ovanstående exempel,toCelsius det refererar till funktionens objekt, medan toCelsius() det refererar till funktionens resultat.

exempel

Att komma åt en funktion utan () returnerar funktionens definition:

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

prova själv

Funktioner som variabler

Funktioner används på samma sätt som variabler, i alla typer av formler, tilldelningar och beräkningar.

exempel

Använd variabler för att lagra funktionens värde:

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

Du kan använda funktioner som variabler direkt:

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

prova själv

Du kommer att lära dig mer om funktioner i denna tutorial.

lokala variabler

variabler som deklareras i en JavaScript-funktion blir funktionenslokala variabler

lokala variabler kan bara åtkommas inom funktionen.

exempel

// Koden här kan inte använda carName
function myFunction() {
    var carName = "Volvo";
    // Koden här kan använda carName
}
// Koden här kan inte använda carName

prova själv

eftersom lokala variabler bara kan identifieras av deras funktion kan man använda samma namn på variabler i olika funktioner.

lokala variabler skapas vid början av en funktion och tas bort när funktionen är klar.

lärobok

mer information om JavaScript funktionmer information, läs relaterade innehåll i JavaScript-avancerad handledning:

Översikt över ECMAScript-funktioner
Denna sektion förklarar konceptet med funktioner, hur ECMAScript deklarerar och anropar funktioner, och hur funktioner returnerar värden.
ECMAScript arguments-objekt
Denna sektion introducerar detta objekt och förklarar hur man använder length-egenskapen för att bestämma antalet argument för en funktion samt hur man simulerar funktionsoverlåtelse.
ECMAScript Function-objekt (klass)
Denna sektion förklarar hur man skapar funktioner med Function-klassen och introducerar sedan egenskaper och metoder för Function-objektet.
ECMAScript-kapsling (closure)
Denna sektion förklarar konceptet med kapsling (closure) och visar två exempel på enkelt och något mer komplext kapslingar.