|
@@ -686,6 +686,12 @@ console.log("Закончил");
|
|
|
var b = "100500";
|
|
|
})()
|
|
|
```
|
|
|
+
|
|
|
+в данном примере создается функция и тут же вызывается. Функция не сохраняется ни в какой из переменных, а значит вы не сможете её вызвать более
|
|
|
+чем один раз. Единственная цель такой функции (**Self-Invoked Function**) - создать свою собственную область видимости, в которой можно оперировать
|
|
|
+любыми именами переменных не опасаясь побочных эффектов и влияния на переменные окружающего кода. Просто блок кода со своими именами. В **ES6** для
|
|
|
+этих целей есть `let`, однако вы не раз увидите подобный код на **ES5**.
|
|
|
+
|
|
|
Подобную логику можно реализовать с помощью `let`:
|
|
|
```javascript
|
|
|
{
|
|
@@ -695,9 +701,3 @@ console.log("Закончил");
|
|
|
}
|
|
|
```
|
|
|
...однако это не изолирует ваши `var` внутри блока кода, в отличие от функции.
|
|
|
-
|
|
|
-в данном примере создается функция и тут же вызывается. Функция не сохраняется ни в какой из переменных, а значит вы не сможете её вызвать более
|
|
|
-чем один раз. Единственная цель такой функции (**Self-Invoked Function**) - создать свою собственную область видимости, в которой можно оперировать
|
|
|
-любыми именами переменных не опасаясь побочных эффектов и влияния на переменные окружающего кода. Просто блок кода со своими именами. В **ES6** для
|
|
|
-этих целей есть `let`, однако вы не раз увидите подобный код на **ES5**.
|
|
|
-
|