Domyślne parametry JavaScript

W tym samouczku dowiesz się o domyślnych parametrach JavaScript przy pomocy przykładów.

Koncepcja parametrów domyślnych to nowa funkcja wprowadzona w wersji ES6 języka JavaScript. To pozwala nam nadać domyślne wartości parametrom funkcji. Weźmy przykład,

 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

W powyższym przykładzie wartość domyślna xto 3, a wartość domyślna yto 5 .

  • sum(5, 15)- Kiedy oba argumenty są przekazywane, xtrwa 5 i yzajmuje 15 .
  • sum(7)- Gdy 7 jest przekazywane do sum()funkcji, xprzyjmuje 7 i yprzyjmuje wartość domyślną 5 .
  • sum()- Gdy żaden argument nie jest przekazywany do funkcji sum () , xprzyjmuje wartość domyślną 3 i ywartość domyślną 5 .
Jak działają domyślne argumenty w JavaScript

Używanie wyrażeń jako wartości domyślnych

Możliwe jest również podanie wyrażeń jako wartości domyślnych.

Przykład 1: Przekazywanie parametru jako wartości domyślnych

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

W powyższym programie

  • Wartość domyślna xto 1
  • Domyślną wartością yjest xparametr
  • Wartość domyślna zto suma xiy

Jeśli odwołasz się do parametru, który nie został jeszcze zainicjowany, pojawi się błąd. Na przykład,

 function sum( x = y, y = 1 ) ( console.log( x + y); ) sum(); 
Wynik
 ReferenceError: Nie można uzyskać dostępu do „y” przed inicjalizacją

Przykład 2: Przekazywanie wartości funkcji jako wartości domyślnej

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

W powyższym programie

  • 10 jest przekazywane do calculate()funkcji.
  • xstaje się 10i ystaje się 150(funkcja sumy zwraca 15).
  • Wynik będzie 160.

Przekazywanie niezdefiniowanej wartości

W JavaScript, gdy przechodzisz undefineddo domyślnej funkcji parametru, funkcja przyjmuje wartość domyślną. Na przykład,

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

Interesujące artykuły...