Наука + Бизнес = $$$

Карта Сайта

Среда, 13.12.2017, 08:35
Приветствуем Вас Гость
Главное Меню
Помощь Сайту
Информационная:
Пожалуйста, расскажите о нас друзьям и сделайте репост:

Финансовая:
Если этот сайт вам помог, будем благодарны за любую финансовую помощь:
R598551293139

Урок №6: выражения в JavaScript

Выражения в JavaScript

Выражение - это любой фрагмент исходного программного кода, который может быть использован для вычисления значения. Выражения могут быть построены из литералов, операторов, переменных и скобок. После вычисления выражения образуется единственное значение, данные значение может быть строкой, числом или логическим значением. Выражения бывают простые (первичные) и более сложные.

Разберем простейший пример, a + b = с. В данном примере a и b являются операндами, + является оператором (знаком операции), с - является результатом выражения.

Оператор - это символ, с помощью которого производятся различные виды вычислений, присваиваний или сравнений при участии одного или нескольких операндов. Операнды - это значения которые расположены слева и справа от оператора. В данной статье рассмотрим типы операторов и примеры с ними.


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

В JavaScript имеются следующие арифметические операторы:

Операция Описание Примеры Результаты
+ операция сложения 4+3 7
- операция вычитания 4-3 1
* операция умножения 4*3 12
/ операция деления 4/3 1.33
% остаток от деления целых чисел 4%3 1
++ инкремент - увеличение значения операнда на единицу 4++ 5
-- декремент - уменьшение значения операнда на единицу 4-- 3

Операторы в выражении вычисляются стандартно - слева на право, с учетом приоритетов арифметических операций. Как и в элементарной арифметике, порядок вычисления возможно изменять, использовав скобки.

x = a + y * b;
x = (a + y) * b;

Пример записи арифметических выражений:

var numb1 = 7;
var numb2 = 3;
var numb3 = 5 
document.write(numb1 + numb2 + "<br>");
document.write(numb1 - numb2 + "<br>");
document.write(numb1 * numb2 + "<br>");
document.write(numb1 / numb2 + "<br>");
document.write(numb3 % numb2 + "<br>");
document.write(-numb3 % numb2);

Такие арифметические операторы как, сложение, вычитание, деление и умножение работают так же, как и в элементарной математике. Остаток от деления целых чисел получается за счет деления одного операнда на другой, например: 5/2=2 и остаток 1. Инкремент и декремент работают аналогично друг другу, разница только в том, что инкремент(++) увеличивает число на одну единицу, а декремент(--) - уменьшает. Пример:

var x = 3;
alert(x++);
alert(x);

Первое всплывающее окно отобразит цифру 3, а уже второе - цифру 4. В примере использована постфиксная форма инкремента (x++). Префиксная форма инкремента несколько отличается (++x) и сразу увеличивает число на единицу, пример:

var x = 3;
alert(++x);

Операторы декремента (--) работают аналогично операторам инкремента(++), разница только в том, что декремент уменьшает значение на одну единицу. Например:

var x = 3;
alert(--x);


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

В JavaScript имеются следующие операторы сравнения:

Операция Описание Примеры Результаты
== равно 4==3 false
!= не равно 4!=3 true
> больше чем ... 4>3 true
< меньше чем ... 4<3 false
>= больше чем ... или равно 4>3 true
<= меньше чем ... или равно 4<=3 false
=== абсолютно идентично 4==="4" false
!== не идентично 4!=="4" true

Если в результате стоит значение true, значит утверждение примера верно(правдиво), если же false - то утверждение ошибочное(ложь). Давайте разберем каждую операцию более подробно и с примерами.

Операция эквивалентности(==) и операция идентичности(===) используют разные способы для нахождения совпадения между объектами. Оператор идентичности (===) строго проверяет равенство значений не используя никаких преобразований типов для своих объектов(операндов). Оператор эквивалентности(==) менее строг и разрешает преобразование типов своих объектов(операндов) при сравнении их значений. Данные операторы равенства работают со всеми типами данных и операндами любого вида, также, если значения их операндов совпадают возвращают true, если же не совпадают - false.

Достаточно только взглянуть на примеры сравнения с использованием операндов идентичности и эквивалентности. Ниже, в примере, используется операция идентичности (===).

var x = {x: 2};
var y = x;
'7' === 7                                
// false - разные типы данных
null === null                          // true
undefined === undefined      // true
true === true                         // true
false === false                       // true
NaN === NaN                         // false
(2 + 2) === 4                           // true - два одинаковых числа
0 === -0                                  // true
'строка' === 'Строка'             // false - первые символы строки разные
{x: 2} === {x: 2}                      // false
x === y                                   // true - ссылаются на один объект

Ниже в примере используется операция эквивалентности:

null == undefined                   // true
"123" == 123                           // true
true == "1"                              // true
false == 0                                // true
(4+2) == 6                                // true
"my car" == "my car"              // true
4 == 5                                     // false

Операторы неидентичности(!==) и неравенства(!=) работают, аналогично операторам (===) и (==), только в точной противоположности. К примеру, оператор (!=) возвращает false, если оператор (==) считает два значения равными. Остальные операторы сравнения работают также как в элементарной математике и не имеют особенностей.


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

В JavaScript имеются следующие логические операторы:

Оператор Название Примеры использования Описание true/false
&& AND (и) fbi_1 && fbi_2 если оба выражения fbi_1 и fbi_2 равны true; false в противном случае
|| OR (или) fbi_1 || fbi_2 если хотя бы одно из выражений fbi_1 или fbi_2 равно true; false в противном случае
! NOT (не) !fbi true если выражение fbi равно false; false - если выражение fbi равно true

Оператор И (&&) выполняет логическую операцию И над двумя операндами между оператором. Работа его начинается с вычисления левого операнда. Если значение левого операнда можно преобразовать в false - то значение левого операнда будет возращено, и при этом значение правого операнда не будет вычисляться.

Оператор ИЛИ (||) выполняет логическую операцию ИЛИ над двумя операндами между оператором. Работа его начинается с вычисления левого операнда. Если значение левого операнда можно преобразовать в true - то значение левого операнда будет возращено, и при этом значение правого операнда не будет вычисляться.

Оператор НЕ (!) является унарным. Его используют для инверсии логического значения операнда. Перед инверсией, если необходимо, данный оператор преобразует значение своего операнда в булево. К примеру, если изначально переменная "z" имеет значение true, или любое другое значение, которое можно преобразовать в true, то при выражении !z, вернется значение false. Если же переменная "z" изначально имеет значение false, то выражение !z вернет противоположное значение true.


Приоритеты выполнения операций

Углубляться в тему не будем, так как по ней написано очень много теоретических материалов. Главное запомнить порядок выполнения операций в выражениях. Для этого можно воспользоваться следующей таблицей.

Операция Описание
++ инкремент
-- декремент
! отрицание
- унарный минус
* умножение
/ , % деление, остаток от деления
+ сложение
- вычитание
<, >, <=, >= сравнение "больше, меньше или/и равно"
== равенство
!= не равенство
&& логическое "И" ("and")
|| логическое "Или" ("or")
=, +=, -=, *=, /=, %=, != присваивание

Стоит заметить, на данном уроке были рассмотрены далеко не все операторы. Существуют побитовые операторы, которые дают возможности осуществлять низкоуровневые манипуляции с двоичными числами. Побитовые операторы при программировании на JavaScript используются крайне редко. Также существуют условные операторы, операторы запятые и пр., мы однозначно еще к ним вернемся и рассмотрим. Далее рассмотрим события в JavaScript.

На следующем уроке рассмотрим функции в JavaScript, а также примеры функций: Функции в JavaScript


Форма входа
Поиск по сайту
Полезные Сайты
Счетчики
Счетчик PR-CY.Rank
Подписка на обновления
Ваш e-mail: *
Ваше имя: *
Контакты
PhantomX5 © 2014-2017Пишем нам: PhantomX5@mail.ru