Операторы JavaScript


Оглавление

    Показать оглавление

Оператор сложения + добавляет числа:

Оператор присваивания = присваивает значение переменной.


Назначение JavaScript

Оператор присваивания (=) присваивает значение переменной:

Примеры заданий

let x = 10;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Operators</h1>
<h2>The = Operator</h2>

<p id="demo"></p>

<script>
let x = 10;
document.getElementById("demo").innerHTML = x;
</script>

</body>
</html>
// Assign the value 5 to x
let x = 5;
// Assign the value 2 to y
let y = 2;
// Assign the value x + y to z:
let z = x + y;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Operators</h1>
<h2>The Assignment (=) Operator</h2>

<p id="demo"></p>

<script>
// Assign the value 5 to x
let x = 5;
// Assign the value 2 to y
let y = 2;
// Assign the value x + y to z
let z = x + y;
// Display z
document.getElementById("demo").innerHTML = "The sum of x + y is: " + z;
</script>

</body>
</html>

Дополнение JavaScript

Оператор сложения (+) добавляет числа:

Добавление

let x = 5;
let y = 2;
let z = x + y;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Arithmetic</h1>
<h2>The + Operator</h2>

<p id="demo"></p>

<script>
let x = 5;
let y = 2;
let z = x + y;
document.getElementById("demo").innerHTML = z;
</script>

</body>
</html>

Умножение JavaScript

Оператор умножения (*) умножает числа:

Умножение

let x = 5;
let y = 2;
let z = x * y;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Arithmetic</h1>
<h2>The * Operator</h2>

<p id="demo"></p>

<script>
let x = 5;
let y = 2;
let z = x * y;
document.getElementById("demo").innerHTML = z;
</script>

</body>
</html>

Типы операторов JavaScript

Существуют различные типы операторов JavaScript:

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

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

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

  • Строковые операторы

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

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

  • Тернарные операторы

  • Типовые операторы


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

Арифметические операторы используются для выполнения арифметических операций с числами:

Пример арифметических операторов

let a = 3;
let x = (100 + 50) * a;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Arithmetic</h1>
<h2>Arithmetic Operations</h2>
<p>A typical arithmetic operation takes two numbers (or expressions) and produces a new number.</p>

<p id="demo"></p>

<script>
let a = 3;
let x = (100 + 50) * a;
document.getElementById("demo").innerHTML = x;
</script>

</body>
</html>
+

Добавление

-

Вычитание

*

Умножение

**

Возведение в степень (ES2016)

/

Разделение

%

Модуль (остаток деления)

++

Приращение

--

Декремент

Примечание

Арифметические операторы полностью описаны в Глава JS-арифметика.



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

Операторы присваивания присваивают значения переменным JavaScript.

Оператор сложения (+=) добавляет значение к переменной.

Назначение

let x = 10;
x += 5;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Arithmetic</h1>
<h2>The += Operator</h2>

<p id="demo"></p>

<script>
var x = 10;
x += 5;
document.getElementById("demo").innerHTML = x;
</script>

</body>
</html>
Operator Example Same As
= x = y 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

Примечание

Операторы присваивания полностью описаны в разделе . Глава «Назначение JS».


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

==

равно

===

равное значение и равный тип

!=

не равный

!==

не равное значение или не равный тип

>

больше чем

<

меньше, чем

>=

больше или равно

<=

меньше или равно

?

тернарный оператор

Примечание

Операторы сравнения полностью описаны в разделе . Глава «Сравнение JS».


Сравнение строк JavaScript

Все приведенные выше операторы сравнения также можно использовать со строками:

Пример

let text1 = "A";
let text2 = "B";
let result = text1 < text2;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript String Operators</h1>

<p>All conditional operators can be used on both numbers and strings.</p>

<p id="demo"></p>

<script>
let text1 = "A";
let text2 = "B";
let result = text1 < text2;
document.getElementById("demo").innerHTML = "Is A less than B? " + result;
</script>

</body>
</html>

Обратите внимание, что строки сравниваются в алфавитном порядке:

Пример

let text1 = "20";
let text2 = "5";
let result = text1 < text2;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>
<h1>JavaScript String Operators</h1>
<p>Note that strings are compared alphabetically:</p>

<p id="demo"></p>

<script>
let text1 = "20";
let text2 = "5";
let result = text1 < text2;
document.getElementById("demo").innerHTML = "Is 20 less than 5? " + result;
</script>

</body>
</html>

Добавление строк JavaScript

+ также можно использовать для добавления (объединения) строк:

Пример

let text1 = "John";
let text2 = "Doe";
let text3 = text1 + " " + text2;

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript String Operators</h1>
<h2>The + Operator</h2>
<p>The + operator concatenates (adds) strings.</p>

<p id="demo"></p>

<script>
let text1 = "John";
let text2 = "Doe";
let text3 = text1 + " " + text2;
document.getElementById("demo").innerHTML = text3;
</script>

</body>
</html>

Оператор присваивания += также можно использовать для добавления (объединения) строк:

Пример

let text1 = "What a very ";
text1 += "nice day";

Результатом text1 будет:

What a very nice day

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript String Operators</h1>
<h2>The += Operator</h2>
<p>The assignment operator += can concatenate strings.</p>

<p id="demo"></p>

<script>
let text1 = "What a very ";
text1 += "nice day";
document.getElementById("demo").innerHTML = text1;
</script>

</body>
</html>

Примечание

При использовании со строками оператор + называется оператором конкатенации.


Добавление строк и чисел

Добавление двух чисел вернет сумму, но добавление числа и строки вернет строку:

Пример

let x = 5 + 5;
let y = "5" + 5;
let z = "Hello" + 5;

Результатом x, y и z будет:

10
55
Hello5

Попробуйте сами →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript String Operators</h1>
<h2>The + Operator</h2>
<p>Adding a number and a string, returns a string.</p>

<p id="demo"></p>

<script>
let x = 5 + 5;
let y = "5" + 5;
let z = "Hello" + 5;
document.getElementById("demo").innerHTML =
x + "<br>" + y + "<br>" + z;
</script>

</body>
</html>

Примечание

Если вы добавите число и строку, результатом будет строка!


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

&&

логичный и

||

логичный или

!

логично нет

Примечание

Логические операторы полностью описаны в . Глава «Сравнение JS».


Операторы типов JavaScript

typeof

Возвращает тип переменной

instanceof

Возвращает true, если объект является экземпляром типа объекта.

Примечание

Операторы типов полностью описаны в главе Преобразование типов JS.


Битовые операторы JavaScript

Битовые операторы работают с 32-битными числами.

Любой числовой операнд в операции преобразуется в 32-битное число. Результат преобразуется обратно в число JavaScript.

Operator Description Example Same as Result Decimal
& AND 5 & 1 0101 & 0001 0001  1
| OR 5 | 1 0101 | 0001 0101  5
~ NOT ~ 5  ~0101 1010  10
^ XOR 5 ^ 1 0101 ^ 0001 0100  4
<< left shift 5 << 1 0101 << 1 1010  10
>> right shift 5 >> 1 0101 >> 1 0010   2
>>> unsigned right shift 5 >>> 1 0101 >>> 1 0010   2

В приведенных выше примерах используются 4-битные беззнаковые примеры. Но JavaScript использует 32-битные числа со знаком.
По этой причине в JavaScript ~ 5 не вернет 10. Оно вернет -6.
~00000000000000000000000000000101 вернет 1111111111111111111111111111111010

Побитовые операторы полностью описаны в JS. Побитовая глава.