Незадължителните параметри са страхотни за опростяване на код и скриване на разширена, но не често използвана функционалност. Ако през повечето време извиквате функция, използвайки едни и същи стойности за някои параметри, трябва да опитате да направите тези параметри незадължителни, за да избегнете повторение.
Параметрите по избор ли са?
Незадължителните параметри са дефинирани в края на списъка с параметри, след всички необходими параметри. Ако повикващият предостави аргумент за някой от поредица от незадължителни параметри, той трябва да предостави аргументи за всички предходни незадължителни параметри. Разделените със запетая пропуски в списъка с аргументи не се поддържат.
Незадължителни параметри ли са лоши?
Нещото с незадължителните параметри е, те са ЛОШИ, защото са неинтуитивни - което означава, че НЕ се държат по начина, по който бихте очаквали. Ето защо: Те нарушават съвместимостта на ABI! така че можете да промените аргументите по подразбиране на едно място.
Защо се добавят допълнителни параметри?
Разработчиците могат да използват незадължителния параметър, за да декларират параметрите във функцията по избор, така че, че изискването за предаване на стойността на незадължителните параметри да бъде елиминирано.
Може ли JavaScript функция да няма параметри?
JavaScript функциите могат да бъдат извикани с произволен брой аргументи, независимо от броя на аргументите, посочени в дефиницията на функцията. Тъй като функцията е свободно въведена, няма начин за неяза да декларира типа аргументи, които очаква, и е законно да се предават стойности от всякакъв тип на всяка функция.