|
@@ -287,16 +287,18 @@ mul()
|
|
|
Учтите, что вы не может пропустить один параметр, но при этом указать дальнейшие:
|
|
|
|
|
|
```javascript
|
|
|
-mul(,10) //попытка сделать a по умолчанию, но указать при этом b
|
|
|
+mul(,10) //попытка сделать a по умолчанию, но указать при этом b - ошибка синтаксиса
|
|
|
mul(1,10) //правильный способ
|
|
|
```
|
|
|
|
|
|
-Таким образом, если вы хотите "пропустить" параметр, всё равно придется его указать. Посему обычно параметры по умолчанию идут в конце списка параметров, чем дальше - тем более умолчательные параметры идут.
|
|
|
+Таким образом, если вы хотите "пропустить" параметр, всё равно придется его указать. Посему обычно параметры по умолчанию идут в конце списка параметров.
|
|
|
|
|
|
### Возвращаемое значение
|
|
|
|
|
|
Для возврата значения используется `return`. У него три основных свойства:
|
|
|
-- Собственно возврат значения во внешний код. Выражение после `return` *вычисляется в контексте функции*:
|
|
|
+
|
|
|
+#### Собственно возврат значения во внешний код.
|
|
|
+Выражение после `return` *вычисляется в контексте функции*:
|
|
|
|
|
|
```javascript
|
|
|
function add(a,b)
|
|
@@ -307,8 +309,8 @@ alert(add(3,4))
|
|
|
```
|
|
|
|
|
|
после чего *значение* попадает в место, где функция была вызвана (в `alert`)
|
|
|
-- Прекращение выполнения функции
|
|
|
-- `return` без параметра возвращает *ничего*, т. е. `undefined`:
|
|
|
+#### Прекращение выполнения функции
|
|
|
+#### `return` без параметра возвращает *ничего*, т. е. `undefined`:
|
|
|
|
|
|
```javascript
|
|
|
function bigAndWeirdFunction()
|
|
@@ -487,7 +489,7 @@ alert(typeof a);
|
|
|
```
|
|
|
|
|
|
Набор операций с функциями невелик, в отличие от строк их нельзя конкатенировать, нельзя складывать и умножать как числа; однако их можно присваивать
|
|
|
-переменным и вызывать. **JS** позволяет создавать функции без названия:
|
|
|
+переменным и вызывать. **JS** позволяет создавать функции без названия (*анонимные*):
|
|
|
|
|
|
```javascript
|
|
|
a();
|
|
@@ -560,6 +562,7 @@ var longFunc = (x,y) => { //почти обычная функция
|
|
|
}
|
|
|
|
|
|
longFunc('check', 'text')
|
|
|
+```
|
|
|
|
|
|
### Функции высшего порядка
|
|
|
|