Numatytieji „JavaScript“ parametrai

Šioje pamokoje naudodamiesi pavyzdžiais sužinosite apie numatytuosius „JavaScript“ parametrus.

Numatytųjų parametrų samprata yra nauja funkcija, įdiegta „ ES6 “ „JavaScript“ versijoje. Tai leidžia mums numatyti numatytąsias funkcijos parametrų reikšmes. Paimkime pavyzdį,

 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

Ankstesniame pavyzdyje numatytoji vertė xyra 3, o numatytoji vertė yyra 5 .

  • sum(5, 15)- Kai abu argumentai praėjo, xtrunka 5 ir ytrunka 15 .
  • sum(7)- Kai 7 perduodama į sum()funkciją, xužima 7 ir ytrunka numatytąją vertę 5 .
  • sum()- Kai nėra argumentas yra perduodama suma () funkcija, xtrunka numatytąją vertę 3 ir ytrunka numatytąją vertę 5 .
Kaip numatytieji argumentai veikia „JavaScript“

Išraiškų naudojimas kaip numatytųjų verčių

Taip pat galima pateikti išraiškas kaip numatytąsias reikšmes.

1 pavyzdys: parametro perdavimas kaip numatytosios vertės

 function sum(x = 1, y = x, z = x + y) ( console.log( x + y + z ); ) sum(); // 4

Pirmiau pateiktoje programoje

  • Numatytoji reikšmė xyra 1
  • Numatytoji reikšmė yyra nustatyta kaip xparametras
  • Numatytoji reikšmė zyra xiry

Jei nurodysite parametrą, kuris dar nebuvo inicializuotas, gausite klaidą. Pavyzdžiui,

 function sum( x = y, y = 1 ) ( console.log( x + y); ) sum(); 
Rezultatas
 „ReferenceError“: negalima inicijuoti „y“

2 pavyzdys: Funkcijos reikšmė kaip numatytoji reikšmė

 // 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

Pirmiau pateiktoje programoje

  • 10 perduodama calculate()funkcijai.
  • xtampa 10ir ytampa 150(sumos funkcija grįžta 15).
  • Rezultatas bus 160.

Perduodama neapibrėžta vertė

„JavaScript“, kai pereinate undefinedį numatytąją parametro funkciją, funkcija gauna numatytąją vertę. Pavyzdžiui,

 function test(x = 1) ( console.log(x); ) // passing undefined // takes default value 1 test(undefined); // 1

Įdomios straipsniai...