Простейшие операции

Присваивание

До сих пор мы были в состоянии лишь дать имя переменной. Но переменная состоит из имени и значения. Присвоить значение переменной можно с помощью операции присваивания:

var a;
a=1;
var myString;
myString="
Моя строка";
a=myString;

 В первых двух строках я определил переменную a и присвоил ей значение 1. В следующих двух строках создана переменная myString и ей присвоено значение "Моя строка". В последней строке переменной a присваивается значение, которое имеет другая переменная - myString, т.е. теперь и она имеет в качестве значения строку "Моя строка". JavaScript безразлично, что хранит переменная - число, строку или какой-либо иной объект. В любом месте программы вы можете поместить в переменную все, что пожелаете.
Операции сравнения
Операции сравнения сравнивают два операнда и возвращают логическое значение, означающее результат этого сравнения. Строки сравниваются в лексикографическом порядке в кодировке Unicode. Если типы операндов различны, то делается попытка преобразовать их к одному типу. При этом:

  • Операции "больше", "меньше", "не больше" и "не меньше" сначала пытаются преобразовать операнды в числа, а, если это невозможно, то в строки, а затем производят их сравнение.
  • Операции "равно" и "не равно" пытаются преобразовать операнды в строки, затем в числа и в логические значения, а затем производят их сравнение.
  • Операции "тождественно" и "не тождественно" не преобразовывают типы данных: два операнда считаются тождественно равными, если они имеют одинаковые типы и одинаковые значения.

Операции сравнения

Операция

Название

Описание

a < b

Меньше

Возвращает true, если левый операнд меньше, чем правый операнд.

a > b

Больше

Возвращает true, если левый операнд больше, чем правый операнд.

a <= b

Не больше

Возвращает true, если левый операнд меньше или равен правому операнду.

a => b

Не меньше

Возвращает true, если левый операнд больше или равен правому операнду.

a == b

Равно

Возвращает true, если левый операнд равен правому операнду.

a != b

Не равно

Возвращает true, если левый операнд не равен правому операнду.

a === b

Тождественно

Возвращает true, если левый операнд тождественно равен правому операнду.

a !== b

Не тождественно

Возвращает true, если левый операнд тождественно не равен правому операнду.

Примеры:
var x = "3";
a = x == 3; // a равно true
b = x === 3; // b равно false (разные типы)
Арифметические операции
Арифметические операции применяются к числовым операндам и возвращают числовое значение, означающее результат операции. Если типы операндов различны, то делается попытка преобразовать их к числовому типу. При этом:

  • Операция "сложение" выполняется только тогда, когда оба операнда являются числами или логическими значениями. Если хотя бы один операнд является строкой, то производится конкатенация строк.
  • Остальные операции преобразуют операнды в числа, а затем выполняют операцию.
  • Операции "инкремент" и "декремент" применяются только к переменным.

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

Операция

Название

Описание

a + b

Сложение

Возвращает сумму двух операндов.

a - b

Вычитание

Возвращает разность от вычитания правого операнда из левого.

a * b

Умножение

Возвращает произведение двух операндов.

a / b

Деление

Возвращает частное от деления левого операнда на правый.

a % b

Остаток по модулю

Возвращает целый остаток от деления левого операнда на правый. Плавающие числа перед операцией округляются до целых.

++

Инкремент

Унарная операция. Увеличивает значение переменной на 1. Если используется как префикс (++a), возвращает значение операнда после увеличения его на 1. Если используется как постфикс (a++), возвращает значение операнда перед увеличением его на 1.

--

Декремент

Унарная операция. Уменьшает значение переменной на 1. Если используется как префикс (--a), возвращает значение операнда после уменьшения его на 1. Если используется как постфикс (a--), возвращает значение операнда перед уменьшением его на 1.

-a

Смена знака

Унарная операция. Возвращает арифметическое отрицание операнда.

Примеры:
var i, j, k;
i = 19 % 6.8; // i равно 5
k = 2;
j = k++; // j равно 2, k равно 3
j = ++k; // j и k равны 4

Битовые операции
Битовые операции применяются к числовым операндам, представленным как двоичные числа (т. е. как цепочки из 32 битов), и возвращают числовое значение, означающее результат операции. Перед выполнением операции операнды преобразуются в целые числа, а результат операции преобразуется в Number.

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

Операция

Название

Описание

a & b

Побитовое AND

Возвращает в каждой битовой позиции 1, если соответствующие позиции обоих операндов равны 1.

a | b

Побитовое OR

Возвращает в каждой битовой позиции 1, если соответствующая позиция хотя бы одного операнда равна 1.

a ^ b

Побитовое XOR

Возвращает в каждой битовой позиции 1, если соответствующая позиция ровно одного операнда равна 1.

~a

Побитовое NOT

Унарная операция. Инвертирует каждую битовую позицию операнда.

a << b

Сдвиг влево

Сдвигает двоичное представление левого операнда влево на количество бит, заданное вторым операндом. Освобождающиеся справа биты заполняются нулями.

a >> b

Арифметический сдвиг вправо

Сдвигает двоичное представление левого операнда вправо на количество бит, заданное вторым операндом. Освобождающиеся слева биты заполняются старшим (знаковым) битом.

a >>> b

Логический сдвиг вправо

Сдвигает двоичное представление левого операнда вправо на количество бит, заданное вторым операндом. Освобождающиеся слева биты заполняются нулями.

Примеры:
var i, j, k;
i = 15; j = 9;
k = i & j; // k равно 9 (1111 & 1001 = 1001)
k = i | j; // k равно 15 (1111 | 1001 = 1111)
k = i ^ j; // k равно 6 (1111 ^ 1001 = 0110)
i = -14; // двоичное значение 11111111 11111111 11111111 11110010
j = i >> 2; // j равно -4 (11111111 11111111 11111111 11111100)
k = i >>> 2; // k равно 1073741820 (00111111 11111111 11111111 11111100)
Логические операции
Логические операции применяются к логическим операндам и возвращают логическое значение, означающее результат операции. Если типы операндов различны, то делается попытка преобразовать их к логическому типу.

Логические операции

Операция

Название

Описание

a && b

Логическое AND

Возвращает true, если оба операнда истинны. Если первый операнд ложен, то возвращает false, не вычисляя значение второго операнда.

a || b

Логическое OR

Возвращает true, если хотя бы один операнд истинен. Если первый операнд истинен, то возвращает true, не вычисляя значение второго операнда.

!a

Логическое NOT

Унарная операция. Возвращает true, если операнд ложен.

Строковые операции
На сегодняшний день JavaScript поддерживает единственную строковую операцию, а именно конкатенацию строк, которая обозначается символом "+". Если хотя бы один операнд является строкой, то результатом операции является слияние строк-операндов. Примеры:
k = "Моя " + "строка"; // k равно "Моя строка"
text = "Результат: " + 123; // text равно "Результат: 123"

 

© gruppa-43im2009

Конструктор сайтов - uCoz