🖥 Эта статья объясняет концепцию "мёртвой зоны" в JavaScript!
🌟 Мертвая зона — фаза исполнения кода, когда переменная существует, но недоступна до инициализации, что вызывает ошибку ReferenceError. В статье рассматриваются причины мёртвой зоны, особенности let и const в отличие от var, и методы, позволяющие избежать связанных с этим проблем
🔗 Ссылка: *клик*
@javascriptv
🌟 Мертвая зона — фаза исполнения кода, когда переменная существует, но недоступна до инициализации, что вызывает ошибку ReferenceError. В статье рассматриваются причины мёртвой зоны, особенности let и const в отличие от var, и методы, позволяющие избежать связанных с этим проблем
🔗 Ссылка: *клик*
@javascriptv
⚡2🔥1💯1
1. Область видимости (Scope)
var → имеет функциональную область видимости (function scope). Если объявлен в функции — доступен только в ней, если вне — становится глобальной переменной.
let и const → имеют блочную область видимости (block scope). Доступны только внутри { ... }.
var → имеет функциональную область видимости (function scope). Если объявлен в функции — доступен только в ней, если вне — становится глобальной переменной.
let и const → имеют блочную область видимости (block scope). Доступны только внутри { ... }.
if (true) {
var x = 10;
let y = 20;
const z = 30;
}
console.log(x); // 10 (var виден вне блока)
console.log(y); // Ошибка (не определена)
console.log(z); // Ошибка (не определена)🔥2⚡1💯1
2. Hoisting (поднятие переменных)
Все переменные в JavaScript поднимаются вверх своей области видимости (hoisting). Но есть разница:
var: поднимается и сразу инициализируется undefined.
let и const: поднимаются, но не инициализируются. До фактического объявления находятся в "Temporal Dead Zone" (TDZ).
Все переменные в JavaScript поднимаются вверх своей области видимости (hoisting). Но есть разница:
var: поднимается и сразу инициализируется undefined.
let и const: поднимаются, но не инициализируются. До фактического объявления находятся в "Temporal Dead Zone" (TDZ).
console.log(a); // undefined (var поднялся и стал undefined)
var a = 5;
console.log(b); // Ошибка: ReferenceError (TDZ)
let b = 10;
console.log(c); // Ошибка: ReferenceError (TDZ)
const c = 15;
💯2⚡1🆒1
3.Повторное объявление
var: можно переобъявлять в той же области.
let: нельзя переобъявить в одной области.
const: тоже нельзя.
var: можно переобъявлять в той же области.
let: нельзя переобъявить в одной области.
const: тоже нельзя.
var a = 1;
var a = 2; // ок
let b = 1;
// let b = 2; // Ошибка
const c = 1;
// const c = 2; // Ошибка
⚡3💯1🆒1
4. Перезапись значения
var: можно менять.
let: можно менять.
const: нельзя менять саму переменную, но если это объект или массив — содержимое можно изменять.
var: можно менять.
let: можно менять.
const: нельзя менять саму переменную, но если это объект или массив — содержимое можно изменять.
var x = 1;
x = 2; // ок
let y = 1;
y = 2; // ок
const z = 1;
// z = 2; // Ошибка
const arr = [1,2,3];
arr.push(4); // Можно менять содержимое
⚡2🔥1💯1🆒1
5. Глобальный объект (window / globalThis)
var: если объявлен вне функции, становится свойством window (в браузере).
let и const: не привязываются к window.
var: если объявлен вне функции, становится свойством window (в браузере).
let и const: не привязываются к window.
var a = 100;
let b = 200;
console.log(window.a); // 100
console.log(window.b); // undefined
🔥3⚡1💯1🆒1
Типы данных в JavaScript —— В JavaScript все данные делятся на две большие группы
1 - Primitive types
2 - Reference types
1 - Primitive types
1/ string - строки
2/ number - числа
3/ bigint - большие числа
4/ boolean - true/false
5/ undefined -значение не найдено
6/ symbol - уникальный идентификатор
7/ null - пустое значение
2 - Reference types
1/ object – объект
2/ array – массив
3/ function – функция
4/ date – дата и время
⚡3🔥1💯1🆒1
* Reference types
example
example
let user = { name: "Али", age: 30 }; // object
let fruits = ["яблоко", "банан"]; // array
function greet() { console.log("Привет"); } // function
let now = new Date(); // date💯3⚡1🔥1🆒1
* Primitive types
example
example
let name = "Abror"; // string
let age = 16; // number
let big = 123456789n; // bigint
let isAdmin = true; // boolean
let x; // undefined
let y = (null); // null
let id = Symbol("id"); // symbol
⚡2🔥1💯1🆒1
MTС Web Services — №1 в рейтинге GPU-облаков в рейтинге GPU Cloud 2025 от CNews
Эксперты оценивали: технологичность, надёжность, универсальность и стоимость.
Почему выбрали MWS:
— 15 GPU-конфигураций (A100, A6000, V100, T4 и др.)
— Tier III ЦОДы, балансировщик нагрузки и DRaaS
— MWS VMcloud Platform, KVM, поддержка Kubernetes, VDI
— инструменты для MLOps и платформа для управления LLM-моделями MWS GPT
— гибкие и фиксированные сценарии, выделенные сегменты
Технологично, стабильно, по делу.
@datascienceiot
Эксперты оценивали: технологичность, надёжность, универсальность и стоимость.
Почему выбрали MWS:
— 15 GPU-конфигураций (A100, A6000, V100, T4 и др.)
— Tier III ЦОДы, балансировщик нагрузки и DRaaS
— MWS VMcloud Platform, KVM, поддержка Kubernetes, VDI
— инструменты для MLOps и платформа для управления LLM-моделями MWS GPT
— гибкие и фиксированные сценарии, выделенные сегменты
Технологично, стабильно, по делу.
@datascienceiot
🔥3🆒2⚡1💯1
Арифметические операторы (Arithmetic)
👉 Используются для математических вычислений.
👉 Используются для математических вычислений.
let a = 10;
let b = 3;
console.log(a + b); // 13 (сложение)
console.log(a - b); // 7 (вычитание)
console.log(a * b); // 30 (умножение)
console.log(a / b); // 3.333... (деление)
console.log(a % b); // 1 (остаток от деления)
console.log(a ** b); // 1000 (возведение в степень)
🆒2
Операторы присваивания (Assignment)
👉 Присваивают значение переменной или обновляют его.
👉 Присваивают значение переменной или обновляют его.
let x = 10;
x += 5; // 15 (x = x + 5)
x -= 3; // 12 (x = x - 3)
x *= 2; // 24 (x = x * 2)
x /= 4; // 6 (x = x / 4)
console.log(x); // 6
⚡1🔥1💯1
Операторы сравнения (Comparison)
👉 Сравнивают значения, результат всегда true или false.
👉 Сравнивают значения, результат всегда true или false.
console.log(5 == "5"); // true (сравнивает только значение)
console.log(5 === "5"); // false (сравнивает и значение, и тип)
console.log(10 != 7); // true (не равно)
console.log(4 > 9); // false (больше)
console.log(8 >= 8); // true (больше или равно)
console.log(2 <= 1); // false (меньше или равно)
⚡1🔥1🆒1
Логические операторы (Logical)
👉 Используются для объединения условий.
👉 Используются для объединения условий.
let age = 20;
let isStudent = true;
console.log(age > 18 && isStudent); // true (и — оба условия должны быть true)
console.log(age > 25 || isStudent); // true (или — хотя бы одно условие true)
console.log(!isStudent); // false (не — меняет значение на противоположное)
💯2🆒1
Тернарный оператор (Ternary)
👉 Короткая запись if-else.
👉 Короткая запись if-else.
let age = 17;
let result = (age >= 18) ? "Совершеннолетний" : "Несовершеннолетний";
console.log(result); // Несовершеннолетний
🆒3
🔥 JavaScript Array Methods (Методы массива)
Массив — это структура данных, которая хранит несколько значений в одной переменной.
Массив — это структура данных, которая хранит несколько значений в одной переменной.
⚡2💯1