JavaScript-functiedefinities

JavaScript-functies worden gedefinieerd met het functiontrefwoord.

u kunt een functiedeclaratie of een functieuitdrukking gebruiken.

functie declaraties

eerder in deze tutorial, leerde u dat functies worden gedeclareerd met de volgende syntaxis:

function functionName(parameters) {
// code uit te voeren
}

gedeclareerde functies worden niet onmiddellijk uitgevoerd., Ze worden “opgeslagen voor later gebruik”, en zullen later worden uitgevoerd, wanneer ze worden aangeroepen (opgeroepen).

voorbeeld

functie mijnfunctie (a, b) {
retourneer a * b;
}

probeer het zelf “

puntkomma ‘ s worden gebruikt om uitvoerbare Javascript-statements te scheiden.
omdat een functie declaratie geen uitvoerbaar statement is, is het niet gebruikelijk om het te beëindigen met een puntkomma.

functie-expressies

een JavaScript-functie kan ook worden gedefinieerd met behulp van een expressie.,

Een functie-expressie kan worden opgeslagen in een variabele:

Voorbeeld

var x = function (a, b) {return a * b};

Probeer het Zelf ”

Na een functie-expressie is opgeslagen in een variabele, de variabele kan gebruikt worden als een functie:

Voorbeeld

var x = function (a, b) {return a * b};
var z = x(4, 3);

Probeer het Zelf ”

De functie hierboven is eigenlijk een anonieme functie (een functie zonder naam).

In variabelen opgeslagen functies hebben geen functienamen nodig. Ze worden altijd aangeroepen (aangeroepen) met behulp van de variabele naam.,

De functie hierboven eindigt met een puntkomma omdat het een onderdeel is van een uitvoerbaar statement.

the Function() Constructor

zoals u in de vorige voorbeelden hebt gezien, worden JavaScript-functies gedefinieerd met het sleutelwoord function.

functies kunnen ook worden gedefinieerd met een ingebouwde JavaScript-functieconstructor genaamd Function().,

voorbeeld

var myFunction = new Function (“a”, “b”, “return a * b”);
var x = myFunction(4, 3);

probeer het zelf ”

eigenlijk hoeft u de Function constructor niet te gebruiken. Het voorbeeld hierboven is hetzelfde als schrijven:

voorbeeld

var myFunction = function(a, b) {return a * b};
var x = myFunction (4, 3);

probeer het zelf ”

meestal kunt u het new sleutelwoord in JavaScript vermijden.,

functie hijsen

eerder in deze tutorial, leerde u over “hijsen” (Javascript hijsen).

hijsen is JavaScript ‘ s standaard gedrag van het verplaatsen van declaraties naar de top van de huidige scope.

hijsen is van toepassing op variabele aangiften en op functionele aangiften.

hierdoor kunnen JavaScript-functies worden aangeroepen voordat ze worden gedeclareerd:

myFunction (5);
function myFunction(y) {
return y * y;
}

functies die met een expressie zijn gedefinieerd, worden niet gehesen.,

Zelfaanroepende functies

functie-expressies kunnen “zelfaanroepend”worden gemaakt.

een zelfaanroepende expressie wordt automatisch aangeroepen (gestart), zonder aangeroepen te worden.

functie-expressies worden automatisch uitgevoerd als de expressie wordt gevolgd door ().

u kunt een functie-declaratie niet zelf aanroepen.

u moet haakjes rond de functie toevoegen om aan te geven dat het een functieuitdrukking is:

voorbeeld

(function () {
var x = ” Hallo!!,”;//I will calculate myself
}) ();

probeer het zelf ”

de bovenstaande functie is eigenlijk een anonieme zelfaanroepende functie (functie zonder naam).,

Functies Kunnen Worden Gebruikt als Waarden

JavaScript-functies kunnen worden gebruikt als waarden:

Voorbeeld

functie myFunction(a, b) {
return a * b;
}
var x = myFunction(4, 3);

Probeer het Zelf ”

JavaScript-functies kunnen worden gebruikt in expressies:

Voorbeeld

functie myFunction(a, b) {
return a * b;
}
var x = myFunction(4, 3) * 2;

Probeer het Zelf ”

Functies zijn Objecten

De typeof operator in retourneert JavaScript “- functie” voor de functies.,

maar JavaScript-functies kunnen het best worden omschreven als objecten.

JavaScript-functies hebben zowel eigenschappen als methoden.

de eigenschap arguments.length geeft het aantal ontvangen argumenten terug toen de functie werd aangeroepen:

voorbeeld

function myFunction(a, b) {
retourneer argumenten.length;
}

probeer het zelf ”

DetoString() methode geeft de functie terug als een tekenreeks:

voorbeeld

function myFunction(a, b) {
retourneer a * b;
}
var txt = myFunction.,toString ();

probeer het zelf ”

een functie gedefinieerd als de eigenschap van een object, wordt een methode van het object genoemd.
Een functie die ontworpen is om nieuwe objecten te maken, wordt een object constructor genoemd.

Pijlfuncties

Pijlfuncties maken een korte syntaxis mogelijk voor het schrijven van functie-expressies.

u hebt het sleutelwoord function niet nodig, het sleutelwoord return en de accolades.,

voorbeeld

// ES5
var x = function(x, y) {
return x * y;
}
// ES6
const x = (x, y) => x * y;

probeer het zelf ”

Pijlfuncties hebben geen eigen this.Ze zijn niet goed geschikt voor het definiëren van objectmethoden.

Pijlfuncties worden niet gehesen. Ze moeten worden gedefinieerd voordat ze worden gebruikt.

het gebruik van constis veiliger dan het gebruik van var, omdat een functie-expressie altijd een constante waarde is.,

u kunt het sleutelwoord return en de accolades alleen weglaten als de functie één statement is. Daarom zou het een goede gewoonte kunnen zijn om ze altijd te houden:

voorbeeld

const x = (x, y)=> { return x * y };

probeer het zelf ”

Pijlfuncties worden niet ondersteund in IE11 of eerder.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Spring naar toolbar