Відмінності між версіями «Оператори мови JavaScript»
Рядок 1: | Рядок 1: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | '''Оператори'''<br/> | ||
+ | JavaScript має арифметичні, рядкові та логічні оператори. Має, і бінарні і унарні оператори. Бінарний оператор вимагає двох операндів, унарний перед оператором і одним після оператора:<br/><br/> | ||
+ | Operand1 operator operand2<br/> | ||
+ | Наприклад, 3 + 4 or x * y<br/> | ||
+ | Унарний оператор вимагає одного операнда, до або після оператора:<br/> | ||
+ | operator operand<br/> | ||
+ | Або<br/> | ||
+ | operand operator<br/> | ||
+ | Наприклад x + + або + + x.<br/><br/> | ||
+ | '''Арифметичні Оператори'''<br/> | ||
+ | Арифметичні оператори беруть чисельні значення (літерали або змінні) як їх операнди і повертають числове значення.<br/><br/> | ||
+ | '''Стандартні Арифметичні Оператори'''<br/> | ||
+ | Арифметичні оператори - додавання (+), віднімання (-), множення (*), і ділення (/). Ці оператори працюють стандартним способом.<br/><br/> | ||
+ | '''Модуль (%)'''<br/> | ||
+ | Оператор модуля використовується наступним чином:<br/> | ||
+ | Var1% var2<br/> | ||
+ | Оператор модуля повертає перший операнд за модулем другого операнд, тобто var1 за модулем var2, де var1 і var2 - змінні. Функція за модулем - це залишковий член від ділення var1 на var2. Наприклад, 12% 5 повертається 2.<br/><br/> | ||
+ | '''Інкремент (+ +)'''<br/> | ||
+ | Оператор інкремент використовується наступним чином:<br/> | ||
+ | var + + або + + var<br/> | ||
+ | Цей оператор збільшує його операнд і повертає значення. Якщо використовуваний постфіксом, з оператором після операнда (наприклад x + +), то повертає значення перед збільшенням. Якщо використовуваний префікс з оператором перед операндом (наприклад + + x), то повертає значення після збільшення.<br/> | ||
+ | Наприклад, якщо x - 3, то твердження<br/> | ||
+ | y = x + +<br/> | ||
+ | Збільшує x до 4 і привласнює y рівне 3.<br/> | ||
+ | Якщо x - 3, то твердження<br/> | ||
+ | y = + + x<br/> | ||
+ | Збільшує x до 4 і привласнює y рівне 4.<br/><br/> | ||
+ | '''Декремент (-)'''<br/> | ||
+ | Оператор декремента використовується наступним чином:<br/> | ||
+ | var - або - var<br/> | ||
+ | Цей оператор зменшує його операнд і повертає значення. Якщо використовуваний постфіксом (наприклад x -) то повертає значення перед зменшенням. Якщо використовуваний префікс (наприклад, - x), то повертає значення після зменшення.<br/> | ||
+ | Наприклад, якщо x - 3, то твердження<br/> | ||
+ | y = x -<br/> | ||
+ | Зменшує x до 2 і привласнює y рівне 3.<br/> | ||
+ | Якщо x - 3, то твердження y = - x<br/> | ||
+ | Зменшує x до 2 і привласнює y рівне 2.<br/><br/> | ||
+ | '''Унарні віднімання (-)'''<br/> | ||
+ | Унарний оператор віднімання повинен передувати його операндів. Наприклад,<br/> | ||
+ | x =-x<br/> | ||
+ | Віднімає значення x; наприклад, якщо б x був рівний 3, то став би рівним -3.<br/><br/> | ||
+ | '''Побітові Оператори'''<br/> | ||
+ | Побітові оператори впливають на операнди як набір бітів (0 і 1). Наприклад, десяткове число 9 має бінарне представлення 1001. Побітові оператори виконують дії на таких двійкових представленнях, але вони повертають стандартне JavaScript чисельне значення.<br/><br/> | ||
+ | '''Побітові Логічні оператори'''<br/> | ||
+ | Побітові логічні оператори працюють таким чином:<br/> | ||
+ | ____* Операнди перетворені в 32-бітові цілі числа, і вирази рядків бітів (0 і 1). | ||
+ | ____* Кожен біт в першому операнді з'єднаний з відповідним бітом у другому операнді: перший біт до першого біту, другий біт до другого біту, і так далі. | ||
+ | ____* Оператор застосовується до кожної пари бітів, і результат створений побітовий.<br/><br/> | ||
+ | ''Побітовi оператори:''<br/> | ||
+ | ____* Побітове І & повертає 1, якщо обидва операнди 1.<br/> | ||
+ | ____* Побітове АБО | повертає 1, якщо будь-який операнд 1.<br/> | ||
+ | ____* Виключне побітове АБО ^ повертає 1, якщо є 1 але не обидва операнди 1.<br/> | ||
+ | Наприклад, бінарне представлення 9 - 1001, і бінарне представлення 15 - 1111. Так, коли побітові оператори застосовуються до цих значень, то результати виглядають наступним чином:<br/> | ||
+ | ____* 15 & 9 повертає 9 (1111 & 1001 = 1001)<br/> | ||
+ | ____* 15 | 9 повертає 15 (1111 | 1001 = 1111)<br/> | ||
+ | ____* 15 ^ 9 повертає 6 (1111 ^ 1001 = 0110)<br/> | ||
+ | |||
+ | |||
+ | '''''Оператори присвоювання (=, +=, -=, *=, /=)''''' | ||
+ | |||
+ | Оператор присвоює значення лівому операнду, заснованому на значенні правого операнда. Основний оператор присвоювання рівність (=), який присвоює значення правого операнда лівому операнду. Тобто x = y приписує значення y до x (значення у присвоюється х). | ||
+ | |||
+ | Інші операторивиглядають наступним чином: | ||
+ | <ul> | ||
+ | <li>Додавання, конкатенація: '''x += y''' означає '''x = x + y''' </li> | ||
+ | <li>Віднімання: '''x -= y''' означає '''x = x - y''' </li> | ||
+ | <li>Множення: '''x *= y''' означає '''x = x * y''' </li> | ||
+ | <li>Ділення: '''x /= y''' означає '''x = x / y''' </li> | ||
+ | <li>Обчислення залишку від ділення: '''x %= y''' означає '''x = x % y''' </li> | ||
+ | </ul> | ||
+ | <br> | ||
+ | Є додаткові оператори присвоювання для побітових операторів | ||
+ | <ul> | ||
+ | <li>Побітовий зсув вліво: '''x <<= y''' означає '''x = x << y''' </li> | ||
+ | <li>Побітовий зсув праворуч: '''x >> = y''' означає '''x = x >> y''' </li> | ||
+ | <li>Побітовий зсув вправо із заповненням нулями '''x >>>= y''' означає '''x = x >>> y''' </li> | ||
+ | <li>Побітове AND '''x &= y''' означає '''x = x & y''' </li> | ||
+ | <li>Виключне побітове АБО '''x ^ = y''' означає '''x = x ^ y''' </li> | ||
+ | <li>Побітове OR '''x |= y''' означає '''x = x | y''' </li> | ||
+ | </ul> | ||
+ | |||
+ | |||
<TABLE BORDER = 1 align = center bordercolor = darkblue> | <TABLE BORDER = 1 align = center bordercolor = darkblue> | ||
− | <CAPTION ALIGN = Top> Основні оператори мови JavaScript у порядку спадання </CAPTION> | + | <CAPTION ALIGN = Top> '''''Основні оператори мови JavaScript у порядку спадання''''' </CAPTION> |
<TR> | <TR> | ||
Рядок 90: | Рядок 176: | ||
<TD> Присвоювання операцій </TD> | <TD> Присвоювання операцій </TD> | ||
</TR> | </TR> | ||
− | + | </TABLE> | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + |
Версія за 13:35, 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) |
= | Присвоювання |
+=, -=, *=, /= | Присвоювання операцій |