Wartości domyślne argumentów w funkcji

Spójrz na zapis:

function typeofweb (
   { a = 1 } = {},
   { b } = { b: 2 },
 ) {
   console.log(a, b);
 }
 typeofweb(); // 1 2
 typeofweb({}); // 1 2
 typeofweb({}, {}); // 1 undefined

Funkcja posiada 2 argumenty (arg 1, arg 2), w przypadku gdy arg 1 jest pusty, to domyślną wartością jest pusty obiekt, w którym wykonujemy destrukturyzację i przypisujemy 1 do a – czyli a zawsze mamy zdefiniowany, chyba, ze w przekazywanym argumencie bedzie obiekt ze zdefiniowanym a = undefined, w argumencie arg 2 domyślną wartością dla braku argumentu jest obiekt { b: 2}, potem destrukturyzujemy b, w przypadku przekazania jakiegokolwiek argumentu, jeśli nie będziemy mieli zdefiniowanego b – dostajemy undefined.

Przykład z książki „TypeScript na poważnie” Michała Miszczyszyna

Rafath Khan

Tu powinien być pean na moją cześć, jaki to wspaniały jestem i jakimi niezwykłymi problemami się zajmuję, ale prawda jest taka, że jak każdy człowiek - mam swoje wady i może jakieś zalety. Są momenty, kiedy mam odpowiednią ilość zasobów psychoenergetycznych i mogę przenosić góry, a są niestety i takie momenty, kiedy mi się nawet z łóżka wstać nie chce... nie może tak źle nie jest, ale chętnie bym sobie pospał dłużej... Niemniej jednak, gdy uda się pokonać siebie - satysfakcja jest, ale potem przychodzą kolejne rzeczy, z którymi trzeba się zmierzyć... a na nie, niestety, energii może nie starczyć i tu właśnie wkracza tzw samodyscyplina - powinieneś usiąść i zrobić to coś, a nie siedzieć na kanapie i zajadać się słodyczami i oglądać jakiś nieciekawy serial czy film dla spalenia swojej najważniejszej waluty świata... czasu, którego nie da się odzyskać. I właśnie o tej samodyscyplinie traktować będę na tym blogu + kilka innych tematów, które są mi potrzebne do pracy

Może Ci się również spodoba