JavaScript-Funktion määritelmät

JavaScript-funktiot määritelläänfunction – hakusanalla.

voit käyttää funktioilmoitusta tai funktion lauseketta.

Funktioilmoitukset

aiemmin tässä opetusohjelmassa opit, että funktiot julistetaan seuraavalla syntaksilla:

funktion funktionimi (parametrit) {
/ / suoritettava koodi
}

ilmoitettuja toimintoja ei suoriteta välittömästi. Ne ”tallennetaan myöhempää käyttöä varten”, ja ne toteutetaan myöhemmin, kun niihin vedotaan (pyydetään).

esimerkki

funktio myFunction (A, b) {
return a * b;
}

Kokeile itse ”

puolipisteitä käytetään suoritettavien JavaScript-lausekkeiden erottamiseen toisistaan.
koska funktioilmoitus ei ole suoritettava lausunto, ei ole tavallista päättää sitä puolipisteeseen.

Funktion lausekkeet

JavaScript-funktio voidaan määritellä myös lausekkeen avulla.

funktion lauseke voidaan tallentaa muuttujaan:

esimerkki

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

kokeile sitä itse ”

kun funktion lauseke on tallennettu muuttujaan, muuttujaa voidaan käyttää funktiona:

esimerkki

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

Kokeile itse ”

yllä oleva funktio on itse asiassa nimetön funktio (funktio ilman nimeä).

muuttujiin tallennetut funktiot eivät tarvitse funktioiden nimiä. Niitä kutsutaan aina muuttujan nimellä.

yllä oleva funktio päättyy puolipisteeseen, koska se on osa suoritettavaa lausuntoa.

funktio () konstruktori

kuten aiemmissa esimerkeissä on nähty, JavaScript-funktiot määritellään function – hakusanalla.

funktiot voidaan määritellä myös sisäänrakennetulla JavaScript-funktion konstruktorilla nimeltä Function().

esimerkki

var myFunction = Uusi funktio (”a”,” b”,”return a * b”);
var x = myFunction (4, 3);

kokeile sitä itse ”

sinun ei oikeastaan tarvitse käyttää funktion konstruktoria. Yllä oleva esimerkki on sama kuin kirjoittaminen:

esimerkki

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

Try it Yourself ”

useimmiten Javascriptissä voi välttää new – hakusanan käyttöä.

Funktion nostaminen

aiemmin tässä tutoriaalissa opit ”nostamisesta” (JavaScript nostamisesta).

nostaminen on JavaScriptin oletuskäyttäytyminen siirrettäessä ilmoituksia nykyisen soveltamisalan yläosaan.

nostaminen koskee muuttuvia ilmoituksia ja tehtäväilmoituksia.

tämän vuoksi JavaScript-funktioita voidaan kutsua ennen niiden julistamista:

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

lausekkeen avulla määriteltyjä funktioita ei nosteta.

Itselaskevat funktiot

Funktiolausekkeet voidaan tehdä ”itselaskeviksi”.

itsestään kutsuva lauseke kutsutaan (käynnistetään) automaattisesti, ilman että sitä kutsutaan.

Funktion lausekkeet suoritetaan automaattisesti, jos lauseketta seuraa ().

et voi itse vedota funktioilmoitukseen.

funktion ympärille on lisättävä sulkeita, jotka osoittavat, että se on funktion lauseke:

esimerkki

(function () {
var x = ” Hello!!”; / / Kutsun itseni
})();

kokeile sitä itse ”

yllä oleva funktio on itse asiassa nimetön itseään kutsuva funktio (funktio ilman nimeä).

funktioita voidaan käyttää arvoina

JavaScript-funktioita voidaan käyttää arvoina:

esimerkki

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

Kokeile itse ”

JavaScript-funktioita voidaan käyttää lausekkeissa:

esimerkki

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

Kokeile itse ”

funktiot ovat objekteja

typeof operaattori Javascriptissä palauttaa funktioille ”funktion”.

mutta JavaScript-funktioita voidaan parhaiten kuvata objekteina.

JavaScript-funktioilla on sekä ominaisuuksia että menetelmiä.

arguments.length ominaisuus palauttaa funktioon vetoamisen yhteydessä saatujen argumenttien määrän:

esimerkki

funktio myFunction (A, b) {
return-argumentit.pituus;
}

kokeile sitä itse ”

toString() menetelmä palauttaa funktion merkkijonona:

esimerkki

function myFunction (A, b) {
return A * b;
}
var txt = myFunction.toString ();

Kokeile itse ”

funktiota, joka määritellään objektin ominaisuudeksi, kutsutaan menetelmäksi objektille.
funktiota, joka on suunniteltu uusien objektien luomiseen, kutsutaan objektin konstruktoriksi.

Arrow-funktiot

Arrow-funktiot mahdollistavat lyhyen syntaksin funktiolausekkeiden kirjoittamiseen.

et tarvitse function hakusanaa, return hakusanaa ja kiharasulkeita.

esimerkki

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

Kokeile itse ”

Nuolifunktioilla ei ole omia this.Ne eivät sovellu hyvin objektimenetelmien määrittelyyn.

Nuolifunktioita ei nosteta. Ne on määriteltävä ennen niiden käyttöä.

käyttäminen conston turvallisempaa kuin var käyttäminen, koska funktion lauseke on aina vakioarvo.

return – hakusanan ja kihartimen voi jättää pois vain, jos funktio on yksittäinen lauseke. Tämän vuoksi voi olla hyvä tapa pitää ne aina:

esimerkki

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

Try it Yourself ”

Arrow-funktioita ei tueta IE11: ssä tai sitä aiemmissa versioissa.

Vastaa

Sähköpostiosoitettasi ei julkaista.

More: