U ovom ćete uputstvu uz primjere naučiti o zadanim parametrima JavaScript-a.
Koncept zadanih parametara nova je značajka uvedena u ES6 verziju JavaScript-a. To nam omogućuje da zadane vrijednosti dodijelimo funkcijskim parametrima. Uzmimo primjer,
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
U gornjem primjeru zadana vrijednost x
je 3, a zadana vrijednost y
je 5 .
sum(5, 15)
- Kada su proslijeđena oba argumenta,x
traje 5, ay
uzima 15 .sum(7)
- Kada se 7 prenese usum()
funkciju,x
uzima 7 iy
uzima zadanu vrijednost 5 .sum()
- Kada se funkcija sum () ne proslijedi niti jedan argument ,x
uzima zadanu vrijednost 3 iy
uzima zadanu vrijednost 5 .
Korištenje izraza kao zadanih vrijednosti
Također je moguće dati izraze kao zadane vrijednosti.
Primjer 1: Prosljeđivanje parametra kao zadanih vrijednosti
function sum(x = 1, y = x, z = x + y) ( console.log( x + y + z ); ) sum(); // 4
U gornjem programu,
- Zadana vrijednost
x
je 1 - Zadana vrijednost
y
postavljena je nax
parametar - Zadana vrijednost
z
je zbrojx
iy
Ako se uputite na parametar koji još nije inicijaliziran, dobit ćete pogrešku. Na primjer,
function sum( x = y, y = 1 ) ( console.log( x + y); ) sum();
Izlaz
ReferenceError: Ne može pristupiti 'y' prije inicijalizacije
Primjer 2: Prosljeđivanje vrijednosti funkcije kao zadane vrijednosti
// 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
U gornjem programu,
- 10 se prenosi u
calculate()
funkciju. x
postaje10
, iy
postaje150
(funkcija zbroja se vraća15
).- Rezultat će biti
160
.
Prolazak nedefinirane vrijednosti
U JavaScript-u, kada prijeđete undefined
na zadanu funkciju parametra, funkcija uzima zadanu vrijednost. Na primjer,
function test(x = 1) ( console.log(x); ) // passing undefined // takes default value 1 test(undefined); // 1