Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI2 апр. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Что такое Expression в JavaScript
Expression (выражение) — это любой фрагмент кода, который возвращает значение. Это фундаментальное понятие в JavaScript, отличное от Statement (инструкции/операторов).
Основное отличие
Statement — это команда, которая выполняет действие. Не возвращает значение:
if (x > 5) {
console.log("x больше 5");
}
for (let i = 0; i < 10; i++) {
// действие
}
Expression — это код, который вычисляется и возвращает значение:
5 + 3 // expression, возвращает 8
"hello" + " world" // expression, возвращает "hello world"
x > 5 // expression, возвращает true или false
function() { } // function expression
Примеры Expressions
// Арифметические expressions
2 + 3 * 4 // 14
10 / 2 // 5
x % 3 // остаток от деления
// Логические expressions
a && b // логическое И
a || b // логическое ИЛИ
!isActive // логическое НЕ
// Условные expressions (ternary operator)
age > 18 ? "взрослый" : "ребёнок"
// Function expression
const add = function(a, b) {
return a + b;
};
// Arrow function expression
const multiply = (a, b) => a * b;
// Object expression
const user = { name: "Иван", age: 30 };
// Array expression
const numbers = [1, 2, 3, 4, 5];
// Template literal expression
`Привет, ${name}!`
Expression Statement
Интересный случай — Expression Statement — выражение, используемое как инструкция:
function(); // function call expression используется как statement
x = 5; // assignment expression используется как statement
console.log("hi"); // call expression используется как statement
Разница видна в контексте:
// Это expression (возвращает значение, которое мы используем)
const result = 5 + 3;
// Это тоже expression, но используется как statement
5 + 3; // результат 8 просто игнорируется
Ключевые типы Expressions
- Literal expressions —
42,"строка",true,null - Identifier expression —
x,name,myFunction - Operator expressions —
a + b,x > y,!flag - Function expressions —
function(x) { },(x) => x * 2 - Member expressions —
obj.property,arr[0] - Call expressions —
myFunc(),Math.max(1, 2) - Conditional expressions —
condition ? value1 : value2
Практическое значение
Понимание expressions важно потому, что:
- В React используются выражения для рендеринга:
{isActive && <Component />} - JSX требует expressions внутри фигурных скобок
- Работа с функциональным программированием (map, filter, reduce) требует понимания expressions
- Debugging и понимание, что вернёт код
// Рендеринг в React
return (
<div>
{user ? <span>{user.name}</span> : <p>Нет пользователя</p>}
{items.map(item => <Item key={item.id} data={item} />)}
</div>
);
Итог: Expression — это любой код, который возвращает значение и может быть использован в выражениях, присваиваниях или как аргумент функции.