|
@@ -130,7 +130,7 @@ readWithDefault("Введите фамилию","","Иванов");
|
|
```
|
|
```
|
|
|
|
|
|
- **Возвращаемое значение**. Обратите внимание на то, что **функции** можно использовать как переменные в выражениях, однако не всегда это имеет смысл.
|
|
- **Возвращаемое значение**. Обратите внимание на то, что **функции** можно использовать как переменные в выражениях, однако не всегда это имеет смысл.
|
|
- Более того, функции нельзя присвоит значение, однако можно *прочесть* её значение.
|
|
|
|
|
|
+ Более того, функции нельзя присвоить значение, однако можно *прочесть* её значение.
|
|
|
|
|
|
```javascript
|
|
```javascript
|
|
var surname = "Петров";
|
|
var surname = "Петров";
|
|
@@ -540,4 +540,15 @@ alert(validatedPrompt("камень-нжнцы-бмг", "", function(value) {
|
|
- Функции обратного вызова используются для внедрения кода, как в случае с `sort` и `validatedPrompt`
|
|
- Функции обратного вызова используются для внедрения кода, как в случае с `sort` и `validatedPrompt`
|
|
- Функции обратного вызова используются для того, что бы отказаться от опроса (poll) и перейти к событийной архитектуре (push), т. е. вместо
|
|
- Функции обратного вызова используются для того, что бы отказаться от опроса (poll) и перейти к событийной архитектуре (push), т. е. вместо
|
|
постоянной проверки произошло то или иное событие или нет - происходит вызов callback когда это событие произошло.
|
|
постоянной проверки произошло то или иное событие или нет - происходит вызов callback когда это событие произошло.
|
|
|
|
+- Функции используются для создания обособленной области видимости, что бы не нарушать окружающее пространство имен:
|
|
|
|
+
|
|
|
|
+```javascript
|
|
|
|
+(function(){
|
|
|
|
+ var a = 5;
|
|
|
|
+ var b = "100500";
|
|
|
|
+})()
|
|
|
|
+```
|
|
|
|
+в данном примере создается функция и тут же вызывается. Функция не сохраняется не в какой из переменных, а значит вы не сможете её вызывать более
|
|
|
|
+чем один раз. Единственная цель такой функции (**Self-Invoked Function**) - создать свою обособленную область видимости, в которой можно оперировать
|
|
|
|
+любыми именами переменных не опасаясь побочных эффектов и влияния на переменные окружающего кода. Просто блок кода со своими именами.
|
|
|
|
|