Параметри по подразбиране на JavaScript

В този урок ще научите за параметрите по подразбиране на JavaScript с помощта на примери.

Концепцията за параметрите по подразбиране е нова функция, въведена в ES6 версията на JavaScript. Това ни позволява да дадем стойности по подразбиране на функционалните параметри. Нека вземем пример,

 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

В горния пример стойността по подразбиране xе 3, а стойността по подразбиране yе 5 .

  • sum(5, 15)- Когато и двата аргумента са предадени, xотнема 5 и yотнема 15 .
  • sum(7)- Когато 7 се предаде на sum()функцията, xотнема 7 и yприема стойността по подразбиране 5 .
  • sum()- Когато към функцията sum () не е предаден аргумент , xприема стойността по подразбиране 3 и yстойността по подразбиране 5 .
Как работят аргументите по подразбиране в JavaScript

Използване на изрази като стойности по подразбиране

Също така е възможно да се предоставят изрази като стойности по подразбиране.

Пример 1: Предаване на параметър като стойности по подразбиране

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

В горната програма,

  • Стойността по подразбиране xе 1
  • Стойността по подразбиране на yе зададена на xпараметър
  • Стойността по подразбиране на zе сумата от xиy

Ако се позовете на параметъра, който все още не е инициализиран, ще получите грешка. Например,

 function sum( x = y, y = 1 ) ( console.log( x + y); ) sum(); 
Изход
 ReferenceError: Няма достъп до „y“ преди инициализация

Пример 2: Предаване на стойност на функцията като стойност по подразбиране

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

В горната програма,

  • 10 се предава на calculate()функцията.
  • xстава 10и yстава 150(функцията за сумиране се връща 15).
  • Резултатът ще бъде 160.

Предаване на недефинирана стойност

В JavaScript, когато преминете undefinedкъм функция на параметър по подразбиране, функцията приема стойността по подразбиране. Например,

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

Интересни статии...