HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Опишем функцию greeting, которая печатает на экран приветствие:</p>
1 <p>Опишем функцию greeting, которая печатает на экран приветствие:</p>
2 <p>Но что произойдет, если при вызове функции передать ей меньшее число аргументов, чем у нее установлено параметров? Давайте посмотрим:</p>
2 <p>Но что произойдет, если при вызове функции передать ей меньшее число аргументов, чем у нее установлено параметров? Давайте посмотрим:</p>
3 <p>Правило здесь простое: параметры, которым "не досталось" аргумента, автоматически инициализируются значением undefined. Проиллюстрируем это подробнее на примере функции, которая принимает на вход три параметра и распечатывает их значения:</p>
3 <p>Правило здесь простое: параметры, которым "не досталось" аргумента, автоматически инициализируются значением undefined. Проиллюстрируем это подробнее на примере функции, которая принимает на вход три параметра и распечатывает их значения:</p>
4 <p>Бывают ситуации, когда заранее неизвестно будет ли вообще передан в ходе выполнения кода функции аргумент или будет ли переданный аргумент содержать осмысленное значение (отличное от значения undefined). В таких случаях удобно предусмотреть какое-нибудь дефолтное значение для параметра.</p>
4 <p>Бывают ситуации, когда заранее неизвестно будет ли вообще передан в ходе выполнения кода функции аргумент или будет ли переданный аргумент содержать осмысленное значение (отличное от значения undefined). В таких случаях удобно предусмотреть какое-нибудь дефолтное значение для параметра.</p>
5 <p>Допустим, мы хотим, чтобы при вызове функции greeting без параметров, она выводила сообщение Hi, anonymous!.</p>
5 <p>Допустим, мы хотим, чтобы при вызове функции greeting без параметров, она выводила сообщение Hi, anonymous!.</p>
6 <p>Тогда мы можем реализовать ее следующим образом:</p>
6 <p>Тогда мы можем реализовать ее следующим образом:</p>
7 <p>Однако, JavaScript поддерживает механизм значений по умолчанию, позволяющий немного упростить код:</p>
7 <p>Однако, JavaScript поддерживает механизм значений по умолчанию, позволяющий немного упростить код:</p>
8 <p>Работает он следующим образом. Если параметр не передан, то подставляется значение по умолчанию (то, что справа от оператора =). Если параметр передан, то переприсваивания не происходит. Параметр будет равен тому значению, которое было фактически передано в функцию.</p>
8 <p>Работает он следующим образом. Если параметр не передан, то подставляется значение по умолчанию (то, что справа от оператора =). Если параметр передан, то переприсваивания не происходит. Параметр будет равен тому значению, которое было фактически передано в функцию.</p>
9 <p>Кроме того, в значениях по умолчанию можно использовать идентификаторы:</p>
9 <p>Кроме того, в значениях по умолчанию можно использовать идентификаторы:</p>
10 <p>И даже вызовы функций:</p>
10 <p>И даже вызовы функций:</p>
11 <p>Но не стоит злоупотреблять этим способом. Значения по умолчанию не всегда подходят для полноценного программирования.</p>
11 <p>Но не стоит злоупотреблять этим способом. Значения по умолчанию не всегда подходят для полноценного программирования.</p>
12 <h2>Примечание</h2>
12 <h2>Примечание</h2>
13 <p><em>В этом уроке мы рассмотрели случай, когда в функцию передается меньше параметров, чем она ожидает. У вас может возникнуть вопрос, что будет, если при вызове передать большее количество параметров, чем установлено в определении функции?</em></p>
13 <p><em>В этом уроке мы рассмотрели случай, когда в функцию передается меньше параметров, чем она ожидает. У вас может возникнуть вопрос, что будет, если при вызове передать большее количество параметров, чем установлено в определении функции?</em></p>
14 <p>Ответ: ничего не произойдет, они будут просто проигнорированы.</p>
14 <p>Ответ: ничего не произойдет, они будут просто проигнорированы.</p>