Tässä opetusohjelmassa opit JavaScript-oletusparametreista esimerkkien avulla.
Oletusparametrien käsite on uusi ominaisuus, joka on otettu käyttöön JavaScriptin ES6- versiossa. Tämän avulla voimme antaa oletusarvot toimintoparametreille. Otetaan esimerkki,
function sum(x = 3, y = 5) ( // return sum return x + y; ) console.log(sum(5, 15)); // 20 console.log(sum(7)); // 12 console.log(sum()); // 8
Yllä olevassa esimerkissä oletusarvo x
on 3 ja oletusarvo y
on 5 .
sum(5, 15)
- Kun molemmat argumentit johdetaan,x
kestää 5 jay
kestää 15 .sum(7)
- Kun 7 välitetäänsum()
toiminnolle, sex
vie 7 jay
ottaa oletusarvon 5 .sum()
- Kun summa () -funktiolle ei välitetä argumenttia , sex
ottaa oletusarvon 3 jay
oletusarvon 5 .

Lausekkeiden käyttäminen oletusarvoina
On myös mahdollista antaa lausekkeita oletusarvoina.
Esimerkki 1: Parametrin välittäminen oletusarvoina
function sum(x = 1, y = x, z = x + y) ( console.log( x + y + z ); ) sum(); // 4
Yllä olevassa ohjelmassa
- Oletusarvo
x
on 1 - Oletusarvoksi
y
asetetaanx
parametri - Oletusarvo
z
on summax
jay
Jos viitat parametriin, jota ei ole vielä alustettu, saat virheilmoituksen. Esimerkiksi,
function sum( x = y, y = 1 ) ( console.log( x + y); ) sum();
Tuotos
ReferenceError: Y-kirjainta ei voi käyttää ennen alustusta
Esimerkki 2: Toimintoarvon välittäminen oletusarvona
// using a function in default value expression const sum = () => 15; const calculate = function( x, y = x * sum() ) ( return x + y; ) const result = calculate(10); console.log(result); // 160
Yllä olevassa ohjelmassa
- 10 välitetään
calculate()
funktiolle. x
tulee10
jay
tulee150
(summafunktio palaa15
).- Tulos on
160
.
Määrittelemätön arvo välittyy
Kun siirryt undefined
oletusparametritoimintoon JavaScriptissä, funktio ottaa oletusarvon. Esimerkiksi,
function test(x = 1) ( console.log(x); ) // passing undefined // takes default value 1 test(undefined); // 1