JavaScript — это мощный язык программирования, позволяющий создавать динамические и интерактивные веб-страницы. Одной из ключевых особенностей JavaScript является использование операторов и выражений.

Операторы в JS

Операторы в JavaScript используются для выполнения различных операций со значениями. В JavaScript есть несколько типов операторов, включая арифметические операции, операции сравнения, логические операции, операции присваивания, побитовые и условные операции.

Арифметические операторы

Арифметические операторы используются для выполнения математических вычислений над числовыми значениями. Эти операторы включают сложение (+), вычитание (-), умножение (*), деление (/) и модуль (%).

let num1 = 10;
let num2 = 20;
// Addition
let sum = num1 + num2;
console.log(sum); // 30
// Subtraction
let difference = num1 - num2;
console.log(difference); // -10
// Multiplication
let product = num1 * num2;
console.log(product); // 200
// Division
let quotient = num2 / num1;
console.log(quotient); // 2
// Modulo (Remainder)
let remainder = num2 % num1;
console.log(remainder); // 0
// Increment
num1++;
console.log(num1); // 11
// Decrement
num2--;
console.log(num2); // 19

Операторы сравнения

Операторы сравнения используются для сравнения двух значений и возврата логического значения true или false. К таким операторам относятся ==, !=, ›, ‹, ›= и ‹=.

let num1 = 10;
let num2 = 20;
// Equal to
console.log(num1 == num2); // false
// Not equal to
console.log(num1 != num2); // true
// Greater than
console.log(num2 > num1); // true
// Less than
console.log(num1 < num2); // true
// Greater than or equal to
console.log(num2 >= num1); // true
// Less than or equal to
console.log(num1 <= num2); // true

Логические операторы

Логические операторы используются для оценки двух или более выражений и возврата логического значения true или false. К таким операторам относятся &&, || и !.

let num1 = 10;
let num2 = 20;
let num3 = 30;
// Logical AND
console.log(num1 < num2 && num2 < num3); // true
// Logical OR
console.log(num1 < num2 || num2 > num3); // true
// Logical NOT
console.log(!(num1 == num2)); // true

Операторы присваивания

Операторы присваивания используются для присвоения значений переменным. Эти операторы включают =, +=, -=, *=, /=, %=, ‹‹=, ››=, &=, ^= и |=.

let num1 = 10;
let num2 = 20;
// Assignment
num1 = num2;
console.log(num1); // 20
// Addition assignment
num1 += num2;
console.log(num1); // 40
// Subtraction assignment
num1 -= num2;
console.log(num1); // 20
// Multiplication assignment
num1 *= num2;
console.log(num1); // 400
// Division assignment
num1 /= num2;
console.log(num1); // 20
// Modulo (Remainder) assignment
num1 %= num2;
console.log(num1); // 0

Побитовые операторы

Побитовые операторы используются для выполнения побитовых операций над значениями. Эти операторы включают &, |, ^, ~, ‹‹ и ››.

let num1 = 10;
let num2 = 20;
// Bitwise AND
console.log(num1 & num2); // 0
// Bitwise OR
console.log(num1 | num2); // 30
// Bitwise XOR
console.log(num1 ^ num2); // 30
// Bitwise NOT
console.log(~num1); // -11
// Left shift
console.log(num1 << 1); // 20
// Right shift
console.log(num1 >> 1); // 5

Условный оператор

Условные операторы используются для присвоения значения переменной на основе условия. Синтаксис условного оператора следующий:

let age = 20;
let status = (age >= 18) ? "adult" : "minor";
console.log(status); // "adult"

Нулевой оператор объединения

Нулевой оператор объединения (??) используется для проверки того, является ли значение нулевым или неопределенным, и если это так, вместо этого он возвращает значение по умолчанию.

let num1 = 10;
let num2 = null;
// Using the Nullish Coalescing Operator
let result = num1 ?? 20;
console.log(result); // 10
result = num2 ?? 20;
console.log(result); // 20

Выражения в JS

Выражения в JavaScript представляют собой комбинации значений, переменных и операторов, которые оцениваются для получения значения. В JavaScript существует несколько типов выражений, включая арифметические выражения, строковые выражения, булевы выражения и объектные выражения.

Арифметические выражения

Арифметические выражения — это выражения, в которых используются арифметические операторы для выполнения математических вычислений над числовыми значениями.

let num1 = 10;
let num2 = 20;
// Addition
let result1 = num1 + num2;
console.log(result1); // 30
// Subtraction
let result2 = num1 - num2;
console.log(result2); // -10
// Multiplication
let result3 = num1 * num2;
console.log(result3); // 200
// Division
let result4 = num1 / num2;
console.log(result4); // 0.5
// Modulo (Remainder)
let result5 = num1 % num2;
console.log(result5); // 10

Строковые выражения

Строковые выражения — это выражения, которые объединяют две или более строк вместе с помощью оператора +.

let firstName = "John";
let lastName = "Doe";
// Concatenation
let fullName = firstName + " " + lastName;
console.log(fullName); // "John Doe"
// String Length
let nameLength = fullName.length;
console.log(nameLength); // 8
// Accessing Characters
let firstChar = fullName[0];
console.log(firstChar); // "J"
// Substring
let firstNameSubstring = fullName.substring(0, 4);
console.log(firstNameSubstring); // "John"
// Replacing Characters
let replacedName = fullName.replace("Doe", "Smith");
console.log(replacedName); // "John Smith"

Логические выражения

Логические выражения — это выражения, которые оцениваются либо как истина, либо как ложь.

let num1 = 10;
let num2 = 20;
// Greater Than
let greaterThan = num2 > num1;
console.log(greaterThan); // true
// Less Than
let lessThan = num1 < num2;
console.log(lessThan); // true
// Greater Than or Equal To
let greaterThanOrEqualTo = num1 >= num2;
console.log(greaterThanOrEqualTo); // false
// Less Than or Equal To
let lessThanOrEqualTo = num2 <= num1;
console.log(lessThanOrEqualTo); // false
// Equal To
let equalTo = num1 == num2;
console.log(equalTo); // false
// Not Equal To
let notEqualTo = num1 != num2;
console.log(notEqualTo); // true

Выражения объекта — это выражения, которые создают новый объект с помощью оператора new.

let person = {
  firstName: "John",
  lastName: "Doe",
  age: 30,
  hobbies: ["reading", "swimming", "hiking"],
  address: {
    street: "123 Main St",
    city: "Anytown",
    state: "CA",
    zip: "12345"
  },
  isStudent: false
};
console.log(person.firstName); // "John"
console.log(person.age); // 30
console.log(person.hobbies[1]); // "swimming"
console.log(person.address.city); // "Anytown"
console.log(person.isStudent); // false
// Adding a new property to the object
person.email = "[email protected]";
console.log(person.email); // "[email protected]"
// Modifying an existing property of the object
person.age = 35;
console.log(person.age); // 35
// Deleting a property of the object
delete person.isStudent;
console.log(person.isStudent); // undefined

Операторы и выражения являются важными компонентами программирования на JavaScript. Понимая, как операторы и выражения работают в JS, вы можете создавать мощные и динамичные веб-страницы, которые обязательно произведут впечатление на ваших пользователей.