update js
This commit is contained in:
@@ -42,4 +42,6 @@ let double = n => n * 2;
|
||||
|
||||
- У функций могут быть локальные переменные: т.е. объявленные в теле функции. Такие переменные видимы только внутри функции.
|
||||
- У параметров могут быть значения по умолчанию: function sum(a = 1, b = 2) \{...\}.
|
||||
- Функции всегда что-нибудь возвращают. Если нет оператора return, результатом будет undefined.
|
||||
- Функции всегда что-нибудь возвращают. Если нет оператора return, результатом будет undefined.
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/function-basics](https://learn.javascript.ru/function-basics)**
|
||||
@@ -36,4 +36,6 @@ function имя(параметры, через, запятую) {
|
||||
Возможно использовать **return** и без значения. Это приведёт к немедленному выходу из функции.
|
||||
|
||||
❗ ***Результат функции с пустым return или без него – undefined*** \
|
||||
❌ Никогда не добавляйте перевод строки между return и его значением
|
||||
❌ Никогда не добавляйте перевод строки между return и его значением
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/function-basics](https://learn.javascript.ru/function-basics)**
|
||||
@@ -78,4 +78,6 @@ let sayHi = function(name) { // (*) магии больше нет
|
||||
|
||||
В большинстве случаев, когда нам нужно объявить функцию, Function Declaration предпочтительнее, т.к функция будет видна
|
||||
до своего объявления в коде. Это даёт нам больше гибкости в организации кода, и, как правило, делает его более
|
||||
читабельным.
|
||||
читабельным.
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/function-expressions](https://learn.javascript.ru/function-expressions)**
|
||||
@@ -57,4 +57,6 @@ function defer(f, ms) {
|
||||
- Не имеют this.
|
||||
- Не имеют arguments.
|
||||
- Не могут быть вызваны с new.
|
||||
- У них также нет super.
|
||||
- У них также нет super.
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/arrow-functions-basics](https://learn.javascript.ru/arrow-functions-basics)**
|
||||
@@ -60,3 +60,4 @@ let arr = [3, 5, 1];
|
||||
alert( Math.max(...arr) ); // 5 (оператор "раскрывает" массив в список аргументов)
|
||||
```
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/rest-parameters-spread-operator](https://learn.javascript.ru/rest-parameters-spread-operator)**
|
||||
@@ -3,8 +3,6 @@ sidebar_position: 6
|
||||
---
|
||||
|
||||
# Область видимости переменных, замыкание
|
||||
Источник: DeepSeek
|
||||
Доп. источник: [https://learn.javascript.ru/closure](https://learn.javascript.ru/closure)
|
||||
|
||||
## Область видимости (scope)
|
||||
В JavaScript **область видимости (scope)** определяет, где переменные, функции и другие идентификаторы могут быть использованы в коде. Понимание области видимости важно для написания корректного и предсказуемого кода. В JavaScript есть несколько типов областей видимости:
|
||||
@@ -134,3 +132,6 @@ delayedGreeting("Алексей"); // Через 1 секунду: "Привет
|
||||
Замыкания могут приводить к утечкам памяти, если они сохраняют ссылки на большие объекты, которые больше не используются. Чтобы избежать этого:
|
||||
- Убедитесь, что замыкания не сохраняют ненужные данные.
|
||||
- Используйте null для очистки ссылок, когда они больше не нужны.
|
||||
|
||||
🚀 Источник: DeepSeek \
|
||||
🚀 Доп. источник: [https://learn.javascript.ru/closure](https://learn.javascript.ru/closure)
|
||||
@@ -17,4 +17,6 @@ sidebar_position: 7
|
||||
- …Но чаще на него ссылаются по-старому, используя имя, характерное для данного окружения, такое как window (браузер) и global (Node.js).
|
||||
- Следует хранить значения в глобальном объекте, только если они действительно глобальны для нашего проекта. И стараться свести их количество к минимуму.
|
||||
- В браузерах, если только мы не используем модули, глобальные функции и переменные, объявленные с помощью var, становятся свойствами глобального объекта.
|
||||
- Для того, чтобы код был проще и в будущем его легче было поддерживать, следует обращаться к свойствам глобального объекта напрямую, как window.x.
|
||||
- Для того, чтобы код был проще и в будущем его легче было поддерживать, следует обращаться к свойствам глобального объекта напрямую, как window.x.
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/global-object](https://learn.javascript.ru/global-object)**
|
||||
@@ -66,4 +66,6 @@ let timerId = setTimeout(function request() {
|
||||
Особый вариант использования: `setTimeout(func, 0)` или просто `setTimeout(func)`.
|
||||
Это планирует вызов `func` настолько быстро, насколько это возможно. Но планировщик будет вызывать функцию только после завершения выполнения текущего кода.
|
||||
|
||||
Так вызов функции будет запланирован сразу после выполнения текущего кода.
|
||||
Так вызов функции будет запланирован сразу после выполнения текущего кода.
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/settimeout-setinterval](https://learn.javascript.ru/settimeout-setinterval)**
|
||||
@@ -23,3 +23,4 @@ let wrapper = function(original, arguments) {
|
||||
```
|
||||
Весьма распространено заимствовать методы массива и применять их к arguments. В качестве альтернативы можно использовать объект с остаточными параметрами ...args, который является реальным массивом.
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/call-apply-decorators](https://learn.javascript.ru/call-apply-decorators)**
|
||||
@@ -62,3 +62,5 @@ let sayHi = user.sayHi.bind(user); // (*)
|
||||
sayHi(); // Привет, Вася!
|
||||
setTimeout(sayHi, 1000); // Привет, Вася!
|
||||
```
|
||||
|
||||
🚀 **Источник: [https://learn.javascript.ru/bind](https://learn.javascript.ru/bind)**
|
||||
Reference in New Issue
Block a user