Відмінності між версіями «Оператори мови JavaScript»
Рядок 51: | Рядок 51: | ||
=== '''''Побітові Логічні оператори''''' === | === '''''Побітові Логічні оператори''''' === | ||
Побітові логічні оператори працюють таким чином:<br/> | Побітові логічні оператори працюють таким чином:<br/> | ||
− | + | * Операнди перетворені в 32-бітові цілі числа, і вирази рядків бітів (0 і 1). | |
− | + | * Кожен біт в першому операнді з'єднаний з відповідним бітом у другому операнді: перший біт до першого біту, другий біт до другого біту, і так далі. | |
____* Оператор застосовується до кожної пари бітів, і результат створений побітовий.<br/><br/> | ____* Оператор застосовується до кожної пари бітів, і результат створений побітовий.<br/><br/> | ||
''Побітовi оператори:''<br/> | ''Побітовi оператори:''<br/> |
Версія за 13:56, 13 квітня 2010
JavaScript має арифметичні, рядкові та логічні оператори. Має, і бінарні і унарні оператори. Бінарний оператор вимагає двох операндів, унарний перед оператором і одним після оператора:
Operand1 operator operand2
Наприклад, 3 + 4 or x * y
Унарний оператор вимагає одного операнда, до або після оператора:
operator operand
Або
operand operator
Наприклад x + + або + + x.
Зміст
Арифметичні Оператори
Арифметичні оператори беруть чисельні значення (літерали або змінні) як їх операнди і повертають числове значення.
Стандартні Арифметичні Оператори
Арифметичні оператори - додавання (+), віднімання (-), множення (*), і ділення (/). Ці оператори працюють стандартним способом.
Модуль
Оператор модуля використовується наступним чином:
Var1 % var2
Оператор модуля повертає перший операнд за модулем другого операнд, тобто var1 за модулем var2, де var1 і var2 - змінні. Функція за модулем - це залишковий член від ділення var1 на var2. Наприклад, 12% 5 повертається 2.
Інкремент
Оператор інкремент використовується наступним чином:
var ++ або ++ var
Цей оператор збільшує його операнд і повертає значення. Якщо використовуваний постфіксом, з оператором після операнда (наприклад x + +), то повертає значення перед збільшенням. Якщо використовуваний префікс з оператором перед операндом (наприклад + + x), то повертає значення після збільшення.
Наприклад, якщо x - 3, то твердження
y = x + +
Збільшує x до 4 і привласнює y рівне 3.
Якщо x - 3, то твердження
y = + + x
Збільшує x до 4 і привласнює y рівне 4.
Декремент
Оператор декремента використовується наступним чином:
var - або - var
Цей оператор зменшує його операнд і повертає значення. Якщо використовуваний постфіксом (наприклад x -) то повертає значення перед зменшенням. Якщо використовуваний префікс (наприклад, - x), то повертає значення після зменшення.
Наприклад, якщо x - 3, то твердження
y = x -
Зменшує x до 2 і привласнює y рівне 3.
Якщо x - 3, то твердження y = - x
Зменшує x до 2 і привласнює y рівне 2.
Унарні віднімання
Унарний оператор віднімання повинен передувати його операндів. Наприклад,
x =-x
Віднімає значення x; наприклад, якщо б x був рівний 3, то став би рівним -3.
Побітові Оператори
Побітові оператори впливають на операнди як набір бітів (0 і 1). Наприклад, десяткове число 9 має бінарне представлення 1001. Побітові оператори виконують дії на таких двійкових представленнях, але вони повертають стандартне JavaScript чисельне значення.
Побітові Логічні оператори
Побітові логічні оператори працюють таким чином:
* Операнди перетворені в 32-бітові цілі числа, і вирази рядків бітів (0 і 1).
* Кожен біт в першому операнді з'єднаний з відповідним бітом у другому операнді: перший біт до першого біту, другий біт до другого біту, і так далі.
____* Оператор застосовується до кожної пари бітів, і результат створений побітовий.
Побітовi оператори:
____* Побітове І & повертає 1, якщо обидва операнди 1.
____* Побітове АБО | повертає 1, якщо будь-який операнд 1.
____* Виключне побітове АБО ^ повертає 1, якщо є 1 але не обидва операнди 1.
Наприклад, бінарне представлення 9 - 1001, і бінарне представлення 15 - 1111. Так, коли побітові оператори застосовуються до цих значень, то результати виглядають наступним чином:
____* 15 & 9 повертає 9 (1111 & 1001 = 1001)
____* 15 | 9 повертає 15 (1111 | 1001 = 1111)
____* 15 ^ 9 повертає 6 (1111 ^ 1001 = 0110)
Оператори присвоювання
Оператор присвоює значення лівому операнду, заснованому на значенні правого операнда. Основний оператор присвоювання рівність (=), який присвоює значення правого операнда лівому операнду. Тобто x = y приписує значення y до x (значення у присвоюється х).
Інші операторивиглядають наступним чином:
- Додавання, конкатенація: x += y означає x = x + y
- Віднімання: x -= y означає x = x - y
- Множення: x *= y означає x = x * y
- Ділення: x /= y означає x = x / y
- Обчислення залишку від ділення: x %= y означає x = x % y
Є додаткові оператори присвоювання для побітових операторів
- Побітовий зсув вліво: x <<= y означає x = x << y
- Побітовий зсув праворуч: x >> = y означає x = x >> y
- Побітовий зсув вправо із заповненням нулями x >>>= y означає x = x >>> y
- Побітове AND x &= y означає x = x & y
- Виключне побітове АБО x ^ = y означає x = x ^ y
- Побітове OR x |= y означає x = x | y
Оператор | Виконувана операція |
---|---|
. | Доступ до властивості або методу обекту |
[ ] | Доступ до елементу масиву |
( ) | Виклик функції |
++ | Приріст (Інкримент) |
-- | Зменншення (Декримент) |
- | Унарний мінус |
! | Заперечення (Логічне NOT) |
delete | Видалення властивості обекту |
new | Створення екземпляру обекта |
typeof | Повертае тип операнда |
void | Повертае невизначене значення |
*, /, % | Арифметичне множення, ділення, модуль |
+, - | Арифметичне додавання, віднімання |
+ | Конкатинація рядків |
<, <=, >, >= | Меньше, меньше рівне, більше, більше рівне |
==, != | Перевірка рівності та нерівності |
===, !== | Перевірка ідентичності (тобто рівності або нерівності без перетворення типу операндів) |
&& | Логічний AND (другий операнд обраховуеться, якщо перший дорівнюе TRUE) |
|| | Логічний OR (другий операнд обраховуеться, якщо перший дорівнюе FALSE) |
= | Присвоювання |
+=, -=, *=, /= | Присвоювання операцій |