Ҳароператорҳо дар JavaScript вуҷуд доранд?
sobes.tech AI
Ҷавоб аз AI
Дар JavaScript існує кілька типів операторів, які виконують різні функції:
-
Оператори присвоєння: Присвоюють значення змінній.
=(просте присвоєння)+=,-=,*=,/=,%=(складені оператори присвоєння)**=(присвоєння з піднесенням до степеня)<<=,>>=,>>>=(присвоєння з зсувом)&=,|=,^=(бітові оператори присвоєння)&&=,||=,??=(логічне присвоєння)
-
Оператори порівняння: Порівнюють дві значення і повертають булеве значення.
==(рівність)!=(нерівність)===(строга рівність)!==(строга нерівність)>(більше)<(менше)>=(більше або дорівнює)<=(менше або дорівнює)
-
Арифметичні оператори: Виконують математичні операції.
+(додавання)-(віднімання)*(множення)/(ділення)%(залишок від ділення)**(піднесення до степеня)++(інкремент)--(декремент)
-
Бітові оператори: Виконують операції на рівні окремих бітів числа.
&(бітове І)|(бітове ІЛІ)^(бітове виключне ІЛІ)~(бітове НЕ)<<(зміщення вліво)>>(зміщення вправо з збереженням знака)>>>(зміщення вправо з заповненням нулями)
-
Логічні оператори: Об’єднують або інвертують булеві значення.
&&(логічне І)||(логічне ІЛІ)!(логічне НЕ)
-
Стрінгові оператори: Працюють зі стрічками.
+(конкатенація)
-
Умовний (тернарний) оператор: Коротка форма
if...else.// умова ? вираз1 : вираз2 let result = (a > b) ? "a більше b" : "b більше або дорівнює a"; -
Оператор запятая: Виконує кілька виразів, повертаючи значення останнього.
let x = 0; let y = (x++, 5); // x стає 1, y стає 5 -
Оператори відношення: Перевіряють тип і наявність властивостей.
in(перевіряє наявність властивості в об’єкті)
// 'propertyName' in object console.log('length' in [1, 2, 3]); // trueinstanceof(перевіряє, чи є об’єкт екземпляром класу)
// object instanceof className function Car() {} let myCar = new Car(); console.log(myCar instanceof Car); // true -
Унарні оператори плюса і мінуса:
+(перетворює операнд у число)
console.log(+"5"); // 5 (число)-(перетворює операнд у число і інвертує знак)
console.log(-"10"); // -10 (число) -
Оператор типу:
typeof(повертає рядок, що вказує тип операнда)
// typeof operand console.log(typeof 42); // "number" console.log(typeof "hello"); // "string"delete(видаляє властивість об’єкта або елемент масиву)
// delete object.property // delete array[index] let obj = { a: 1, b: 2 }; delete obj.a; console.log(obj); // { b: 2 } -
Груповий оператор ( ): Визначає порядок виконання операцій.
let z = (2 + 3) * 4; // Обчислення в дужках виконується першими -
Оператор new: Створює екземпляр об’єкта.
// new Constructor([arguments]) let date = new Date(); -
Оператор super: Викликає метод батьківського класу.
class Parent { greet() { console.log("Hello from Parent"); } } class Child extends Parent { greet() { super.greet(); // Виклик методу батька console.log("Hello from Child"); } } -
Оператор this: Посилається на поточний контекст виконання.
-
Оператор void: Виконує вираз і повертає
undefined.// void expression console.log(void 0); // undefined -
Оператори nullish coalescing і optional chaining:
??(nullish coalescing оператор - повертає правий операнд, якщо лівийnullабоundefined)
// left ?? right let val = undefined ?? "default"; // val буде "default"?.(optional chaining оператор - безпечний доступ до властивостей у ланцюжку, якщо проміжне значенняnullабоundefined)
// object?.property?.method() let user = { address: { city: "NYC" } }; console.log(user.address?.zipCode); // undefined (без помилки)