НАЙКРАЩИЙ САЙТ ДЛЯ ВЕБ-РОЗРОБНИКІВ

JS Довідник

JS за категорією JS за алфавітом

JavaScript

JS Масив JS Булеві JS Класи JS Дата JS Помилка JS Глобальні JS JSON JS Математичні JS Число JS Об’єкт JS Оператори JS Пріоритет JS Регулярні вирази
Модифікатори: g i m Групи: [abc] [^abc] [0-9] [^0-9] (x|y) Метасимволи: . \w \W \d \D \s \S \b \B \0 \n \f \r \t \v \xxx \xdd \uxxxx Квантори: + * ? {X} {X,Y} {X,} $ ^ ?= ?! Властивості: constructor global ignoreCase lastIndex multiline source Методи: compile() exec() test() toString()
JS Інструкції JS Рядки JS Типізований масив

Window

Об’єкт Window Window консоль Window Історія Window Локація Window Навігатор Window Екран

HTML DOM

HTML Документи HTML Елементи HTML Атрибути HTML Колекція HTML NodeList HTML DOMTokenList HTML Стилі
alignContent alignItems alignSelf animation animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationTimingFunction animationPlayState background backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPosition backgroundRepeat backgroundSize backfaceVisibility border borderBottom borderBottomColor borderBottomLeftRadius borderBottomRightRadius borderBottomStyle borderBottomWidth borderCollapse borderColor borderImage borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeft borderLeftColor borderLeftStyle borderLeftWidth borderRadius borderRight borderRightColor borderRightStyle borderRightWidth borderSpacing borderStyle borderTop borderTopColor borderTopLeftRadius borderTopRightRadius borderTopStyle borderTopWidth borderWidth bottom boxShadow boxSizing captionSide caretColor clear clip color columnCount columnFill columnGap columnRule columnRuleColor columnRuleStyle columnRuleWidth columns columnSpan columnWidth counterIncrement counterReset cssFloat cursor direction display emptyCells filter flex flexBasis flexDirection flexFlow flexGrow flexShrink flexWrap font fontFamily fontSize fontStyle fontVariant fontWeight fontSizeAdjust height isolation justifyContent left letterSpacing lineHeight listStyle listStyleImage listStylePosition listStyleType margin marginBottom marginLeft marginRight marginTop maxHeight maxWidth minHeight minWidth objectFit objectPosition opacity order orphans outline outlineColor outlineOffset outlineStyle outlineWidth overflow overflowX overflowY padding paddingBottom paddingLeft paddingRight paddingTop pageBreakAfter pageBreakBefore pageBreakInside perspective perspectiveOrigin position quotes resize right scrollBehavior tableLayout tabSize textAlign textAlignLast textDecoration textDecorationColor textDecorationLine textDecorationStyle textIndent textOverflow textShadow textTransform top transform transformOrigin transformStyle transition transitionProperty transitionDuration transitionTimingFunction transitionDelay unicodeBidi userSelect verticalAlign visibility width wordBreak wordSpacing wordWrap widows zIndex

HTML Події

HTML Події HTML Об’єкти подій HTML Властивості події HTML Методи подій

Web API

API Консоль API Fetch API Fullscreen API Геолокація API Історія API MediaQueryList API Сховище API Валідація API Веб

HTML Об’єкти

<a> <abbr> <address> <area> <article> <aside> <audio> <b> <base> <bdo> <blockquote> <body> <br> <button> <canvas> <caption> <cite> <code> <col> <colgroup> <datalist> <dd> <del> <details> <dfn> <dialog> <div> <dl> <dt> <em> <embed> <fieldset> <figcaption> <figure> <footer> <form> <head> <header> <h1> - <h6> <hr> <html> <i> <iframe> <img> <ins> <input> button <input> checkbox <input> color <input> date <input> datetime <input> datetime-local <input> email <input> file <input> hidden <input> image <input> month <input> number <input> password <input> radio <input> range <input> reset <input> search <input> submit <input> text <input> time <input> url <input> week <kbd> <label> <legend> <li> <link> <map> <mark> <menu> <menuitem> <meta> <meter> <nav> <object> <ol> <optgroup> <option> <output> <p> <param> <pre> <progress> <q> <s> <samp> <script> <section> <select> <small> <source> <span> <strong> <style> <sub> <summary> <sup> <table> <tbody> <td> <tfoot> <th> <thead> <tr> <textarea> <time> <title> <track> <u> <ul> <var> <video>

Інші довідники

CSSStyleDeclaration JS Перетворення


JavaScript. Уроки W3Schools для початківців українською мовою

En

JavaScript Довідник операторів

JavaScript Оператори

Оператори використовуються для призначення значень, порівняння значень, виконання арифметичних операцій тощо.

Існують різні типи операторів JavaScript:

  • Арифметичні оператори
  • Оператори присвоєння
  • Оператори порівняння
  • Логічні оператори
  • Умовні оператори
  • Оператори типу

Арифметичні оператори JavaScript

Арифметичні оператори використовуються для виконання арифметичних дій між змінними та/або значеннями.

Враховуючи те, що y = 5, таблиця нижче пояснює арифметичні оператори:

Оператор Назва Приклад Результати Спробуй це
+ Додавання x = y + 2 y=5, x=7 Спробуй це »
- Віднімання x=y-2 y=5, x=3 Спробуй це »
* Множення x=y*2 y=5, x=10 Спробуй це »
** Піднесення до степеня
ES2016
x=y**2 y=5, x=25 Спробуй це »
/ Ділення x = y / 2 y=5, x=2.5 Спробуй це »
% Залишок x = y % 2 y=5, x=1 Спробуй це »
++ Пре-інкремент x = ++y y=6, x=6 Спробуй це »
++ Пост-інкремент x = y++ y=6, x=5 Спробуй це »
-- Пре-декремент x = --y y=4, x=4 Спробуй це »
-- Пост-декремент x = y-- y=4, x=5 Спробуй це »

Щоб дізнатись більше про арифметичні оператори, прочитайте розділ JavaScript Арифметика на нашому сайті W3Schools українською.


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

Оператори присвоєння використовуються для призначення значень змінним JavaScript.

З огляду на те, що x = 10 та y = 5, у таблиці нижче пояснюються оператори присвоєння:

Оператор Приклад Такий же, як Результат Спробуй це
= x = y x = y x = 5 Спробуй це »
+= x += y x = x + y x = 15 Спробуй це »
-= x -= y x = x - y x = 5 Спробуй це »
*= x *= y x = x * y x = 50 Спробуй це »
/= x /= y x = x / y x = 2 Спробуй це »
%= x %= y x = x % y x = 0 Спробуй це »
: x: 45 size.x = 45 x = 45 Спробуй це »

Щоб дізнатись більше про оператори присвоєння, прочитайте розділ JavaScript Присвоєння.


JavaScript Рядкові оператори

Оператори + та += також можна використовувати для об’єднання (додавання) рядків.

Враховуючи те, що t1 = "Good ", t2 = "Morning", та t3 = "", у таблиці нижче пояснюються оператори:

Оператор Приклад t1 t2 t3 Спробуй це
+ t3 = t1 + t2 "Good " "Morning"  "Good Morning" Спробуй це »
+= t1 += t2 "Good Morning" "Morning" Спробуй це »

Оператори порівняння

Оператори порівняння використовуються в логічних висловлюваннях для визначення рівності чи різниці між змінними або значеннями.

Враховуючи те, що x = 5, у таблиці нижче пояснюються оператори порівняння:

Оператор Назва Порівнюючи Повертає Спробуй це
== дорівнює x == 8 false Спробуй це »
== дорівнює x == 5 true Спробуй це »
=== дорівнює значення та тип x === "5" false Спробуй це »
=== дорівнює значення та тип x === 5 true Спробуй це »
!= не дорівнює x != 8 true Спробуй це »
!== не дорівнює значення або тип x !== "5" true Спробуй це »
!== не дорівнює значення або тип x !== 5 false Спробуй це »
> більше ніж x > 8 false Спробуй це »
< менше ніж x < 8 true Спробуй це »
>= більше або дорівнює x >= 8 false Спробуй це »
<= менше або дорівнює x <= 8 true Спробуй це »

Щоб дізнатись більше про оператори порівняння, прочитайте розділ JavaScript Порівняння.


Умовний (тернарний) оператор

Умовний оператор присвоює значення змінній на основі умови.

Синтаксис Приклад Спробуй це
(умова) ? x : y (z < 18) ? x : y Спробуй це »

Логічні оператори

Логічні оператори використовуються для визначення логіки між змінними або значеннями.

Враховуючи, що x = 6 та y = 3, у таблиці нижче пояснюються логічні оператори:

Оператор Назва Приклад Спробуй це
&& AND (x < 10 && y > 1) is true Спробуй це »
|| OR (x === 5 || y === 5) is false Спробуй це »
! NOT !(x === y) is true Спробуй це »

Нульовий оператор об’єднання (??)

Оператор ?? повертає перший аргумент, якщо він не nullish (нульовий) (null або undefined).

В іншому випадку він повертає другий аргумент.

Приклад

let name = null;
let text = "missing";
let result = name ?? text;
Спробуйте самі »

Оператор nullish підтримується в усіх браузерах з березня 2020 року:

Chrome 80 Edge 80 Firefox 72 Safari 13.1 Opera 67
Feb 2020 Feb 2020 Jan 2020 Mar 2020 Mar 2020

Необов’язковий оператор з’єднання (?.)

Оператор ?. повертає undefined, якщо об’єкт undefined або null (замість викидання помилки).

Приклад

// Створити об’єкт:
const car = {type:"Fiat", model:"500", color:"white"};
// Запитати назву автомобіля:
document.getElementById("demo").innerHTML = car?.name;
Спробуйте самі »

Необов’язковий оператор з’єднання підтримується в усіх браузерах з березня 2020 року:

Chrome 80 Edge 80 Firefox 72 Safari 13.1 Opera 67
Feb 2020 Feb 2020 Jan 2020 Mar 2020 Mar 2020

JavaScript Порозрядні (побітові) оператори

Бітові оператори працюють із 32-бітними числами. Будь-який числовий операнд в операції перетворюється на 32-розрядне число. Результат перетворюється назад на число JavaScript.

Оператор Назва Приклад Такий же, як Результат Десятковий Спробуй це
& AND x = 5 & 1 0101 & 0001 0001 1 Спробуй це »
| OR x = 5 | 1 0101 | 0001 0101 5 Спробуй це »
~ NOT x = ~ 5 ~0101 1010 10 Спробуй це »
^ XOR x = 5 ^ 1 0101 ^ 0001 0100 4 Спробуй це »
<< Left shift x = 5 << 1 0101 << 1 1010 10 Спробуй це »
>> Right shift x = 5 >> 1 0101 >> 1 0010 2 Спробуй це »
>>> Unsigned right x = 5 >>> 1 0101 >>> 1 0010 2 Спробуй це »

Примітка

У таблиці вище використовується 4-бітне число без знаку. Оскільки JavaScript використовує 32-розрядні числа зі знаком, ~ 5 не поверне 10. Повернеться -6.

~00000000000000000000000000000101 (~5)
поверне
11111111111111111111111111111010 (-6)


Оператор typeof

Оператор typeof повертає тип змінної, об’єкта, функції чи виразу:

Приклад

typeof "John"   // Повертає string
typeof 3.14     // Повертає number
Спробуйте самі »

Будь ласка, дотримуйтесь:

  • Тип даних NaN – число
  • Тип даних масиву – об’єкт
  • Тип даних дати — об’єкт
  • Тип даних null — об’єкт
  • Тип даних невизначеної змінної є undefined

Приклад

typeof "John"
typeof 3.14
typeof NaN
typeof false
typeof [1, 2, 3, 4]
typeof {name:'John', age:34}
typeof new Date()
typeof function () {}
typeof myCar
typeof null
Спробуйте самі »

Примітка

Ви не можете використовувати typeof, щоб визначити, чи є об’єкт JavaScript масивом чи датою.

Масив і дата повертають об’єкт як тип.


Оператор delete (видалення)

Оператор delete видаляє властивість з об’єкта:

Приклад

const person = {
  firstName:"John",
  lastName:"Doe",
  age:50,
  eyeColor:"blue"
};
delete person.age;
Спробуйте самі »

Оператор delete видаляє як значення властивості, так і саму властивість.

Після видалення властивість не можна використовувати, доки її не буде знову додано.

Оператор delete призначений для використання у властивостях об’єкта. Це не впливає на змінні чи функції.

Примітка

Оператор delete не слід використовувати для властивостей будь-яких попередньо визначених об’єктів JavaScript (масив, логічний вираз, дата, функція, математика, число, регулярний вираз і рядок).

Це може привести до збою вашої програми.


Оператор Поширення (...)

Оператор ... розширює iterable на більше елементів:

Приклад

const q1 = ["Jan", "Feb", "Mar"];
const q2 = ["Apr", "May", "Jun"];
const q3 = ["Jul", "Aug", "Sep"];
const q4 = ["Oct", "Nov", "May"];

const year = [...q1, ...q2, ...q3, ...q4];
Спробуйте самі »

Оператор ... можна використовувати, щоб розширити ітерацію на більше аргументів для викликів функцій:

Приклад

const numbers = [23,55,21,87,56];
let maxValue = Math.max(...numbers);
Спробуйте самі »

Оператор in

Оператор in повертає true, якщо властивість міститься в об’єкті, інакше повертає false:

Приклад об’єкту

const person = {firstName:"John", lastName:"Doe", age:50};
("firstName" in person);
("age" in person);
Спробуйте самі »

Примітка

Ви не можете використовувати in для перевірки вмісту масиву, наприклад ("Volvo" в cars).

Властивості масиву можуть бути лише індексом (0,1,2,3...) і довжиною.

Див. приклади нижче.

Приклади

const cars = ["Saab", "Volvo", "BMW"];
("Saab" in cars);
Спробуйте самі »
const cars = ["Saab", "Volvo", "BMW"];
(0 in cars);
(1 in cars);
(4 in cars);
("length" in cars);
Спробуйте самі »

Попередньо визначені об’єкти

("PI" in Math);
("NaN" in Number);
("length" in String);
Спробуйте самі »

Оператор instanceof

Оператор instanceof повертає true, якщо об’єкт є екземпляром зазначеного об’єкта:

Приклад

const cars = ["Saab", "Volvo", "BMW"];

(cars instanceof Array)   // Повертає true
(cars instanceof Object)  // Повертає true
(cars instanceof String)  // Повертає false
(cars instanceof Number)  // Повертає false
Спробуйте самі »

Оператор void

Оператор void обчислює вираз і повертає undefined. Цей оператор часто використовується для отримання невизначеного примітивного значення за допомогою "void(0)" (корисно під час обчислення виразу без використання значення, що повертається).

Приклад

<a href="javascript:void(0);">
  Марне посилання
</a>

<a href="javascript:void(document.body.style.backgroundColor='red');">
  Натисніть мене, щоб змінити колір фону тіла на червоний
</a>
Спробуйте самі »