HTML5. Основы клиентской разработки

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

Показывать лекцию целиком

В данной лекции мы рассмотрим основные понятия языка JavaScript, поскольку применение HTML5 и создание полноценных сайтов без него представляется затруднительным.

Переменные и операторы

Базовым понятием любого языка программирования является переменная – выделенный именованный участок памяти для хранения значений. Иными словами – это уникальный идентификатор, определяющий данные. Если еще упростить, то можно сказать, что переменная нужна для того, чтобы "запомнить" какое–либо значение, необходимое для дальнейшего использования.

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

Базовыми типами данных в JavaScript являются:

  • Числовые данные.
  • Строковые данные.
  • Логические данные.
  • Числовые данные могут быть как целочисленными, так и вещественными. Числа могут быть записаны не только в десятичной системе счисления, но также в восьмеричной (должны начинаться с нуля, к примеру, 027) и шестнадцатеричной (должны начинаться с символов , например, 0х12F) системах счисления. В восьмеричной и шестнадцатеричной системах счисления могут быть записаны только целочисленные значения.

    Строковые переменные могут хранить значения, представленные в виде последовательности символов. Строковые значения в JavaScript должны заключаться в кавычки (двойные или одинарные). Длина строк ограничивается лишь памятью компьютера.

    Следующие специальные символы могут быть включены в строки JavaScript:

    СимволЗначение
    \0Нуль
    \bПробел
    \fПрогон страницы
    \nСимвол перехода на новую строку
    \rВозврат каретки
    \tТабуляция
    \vВертикальная табуляция
    \’Апостроф
    \"Двойная кавычка
    \\Символ '\'
    \XXXСимвол в кодировке Latin - 1, задаваемый тремя восьмеричными цифрами
    \xXXСимвол в кодировке Latin – 1, задаваемый двумя шестнадцатеричными цифрами
    \uXXXXСимвол Unicode, задаваемый четырьмя шестнадцатеричными цифрами

    Логические величины JavaScript могут принимать следующие значения: true (истина) и false (ложь).

    Все переменные в JavaScript объявляются при помощи оператора var.

    Объявление числовой переменной выглядит следующим образом: var i = 2;

    Наличие var не является обязательным, это скорее правило хорошего тона при программировании.

    Помимо указанных типов данных, JavaScript различает еще три специальных типа данных:

  • Неопределенный тип данных (undefined). Применяется в случаях, когда значение не существует, либо не присвоено. К примеру, если при объявлении переменной ей не присваивается какое-либо конкретное значение, ее значением является undefined.
  • Нулевое значение (null). Означает что значение переменной задано и оно "пустое". Т.е. значение переменной есть "ничто".
  • NaN – обозначение числового значения, не являющегося числом (к примеру, математическая бесконечность).
  • Переменная принимает значение undefined, если значение ей не присваивалось и null – если присвоено нулевое значение.

    Вторым ключевым понятием языка программирования является оператор – наименьшая автономная часть, или команда. Иными словами оператор – это указатель действия, которое необходимо совершить над данными.

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

    Арифметические операторы JavaScript подразделяются на унарные – выполняющиеся над одним операндом, и бинарные – имеющие два операнда и сохраняющие результат в третью переменную.

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

    К арифметическим операторам JavaScript относят:

  • Сложение (+) .
  • Вычитание (-).
  • Умножение (*).
  • Деление (/).
  • Остаток от деления (%).
  • Инкремент, или увеличение на единицу (++).
  • Декремент, или уменьшение на единицу (--).
  • Действия с арифметическими операторами просты и не требуют дополнительного пояснения.

    Отдельно отметим оператор сложения строк (конкатенация) – объединения двух строк в одну:

    var s1 = "string1", s2="string2";
    s3 = s1+s2;
    

    В этом случае переменная s3 примет значение "string1string2".

    Символ '=' является оператором присваивания, т.е. запись вида x=4, присвоит переменной x новое значение, равное 4.

    Можно единовременно присваивать одно значение нескольким переменным: x=z=4.

    Помимо обычного присваивания существует оператор сложного присваивания, т.е. осуществление присваивания совместно с другой операцией (например, со сложением: x +=4).

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

    (источник: http://javascript.ru/manual)

    Операндами операторов сравнения могут быть численные и строковые значения:

    ОператорОписание
    Равно (==)Если два операнда не одного типа, javascript преобразовывает типы и сравнивает строго. Если какой-либо операнд - число или булево значение, то операнды преобразуются в числа; если какой-либо операнд строка - второй преобразуются в строку
    Не равно (!=)Возвращает true, если операнды не равны. Если операнды имеют разный тип, javascript преобразовывает.
    Строго равно (===)Возвращает true, если операнды строго равны (см. выше), без преобразования типов.
    Строго не равно (!==)Возвращает true, если операнды не являются строго равными (см. выше) или имеют разные типы.
    Больше (>)Возвращает true, если левый операнд больше правого.
    Больше или равно (>=)Возвращает true, если левый операнд больше правого или равен ему.
    Меньше (<)Возвращает true, если левый операнд меньше правого.
    Меньше или равно (<=)Возвращает true, если левый операнд меньше правого или равен ему.

    Особенности сравнения операндов:

  • Стандартные операторы равенства (== и !=) сравнивают два операнда безотносительно их типа. Строгие операторы равенства (=== и !==) производят сравнения операндов одинакового типа.
  • При сравнении числа и строки, строка преобразуется в числовое значение.
  • Если один из операндов - булевый, то он преобразуется к 1, если он true и к +0, если он false
  • Если объект сравнивается с числом или строкой, JavaScript пытается получить соответствующее значение для объекта. Он преобразует объект к элементарному значению, строке или числу, используя методы valueOf и toString. Если преобразовать объект не удается - генерируется ошибка выполнения.
  • Логические операторы

    (источник: http://javascript.ru/manual)

    Логические операторы, как правило, используются логическими значениями и возвращают логическое значение.

    В JavaScript операторы и || возвращают не логическое значение, а один из операндов, определивший значение выражения. Конечно, результат в таком случае может быть и не логическим.

    Логические операторы описаны следующей таблицей:

    ОператорИспользованиеОписание
    Логическое И ()expr1 expr2Возвращает expr1, если оно может быть преобразовано к false; в ином случае возвращает expr2. Так что, при вызове с булевыми значениями, вернет true только если оба операнда истинны, иначе false.
    Логическое ИЛИ (||)expr1 ||expr2Возвращает expr1, если оно может быть преобразовано к true; в ином случае возвращает expr2. Так что, при вызове с булевыми значениями, ||вернет true только в том случае, когда хотя бы один операнд истинен, иначе вернет false.
    Логическое НЕ (!)!exprВозвращает false, если операнд может быть преобразован к true, в ином случае возвращает true.

    Условные операторы

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

    Условное выражение оформляется следующим образом:

    if (условие)
    { блок операторов, выполняемый в случае, если условие истина}
    else
    { блок операторов, выполняемый в случае, если условие ложь}
    

    Допустимо пользоваться сокращенным вариантом условного выражения (без else).

    Помимо условного выражения также допустимо использовать условный оператор ?:

    условие ? <выражение, выполняющееся если условие истина> : < выражение, выполняющееся если условие ложь>.
    

    Ключевые термины и определения

    Переменная - выделенный именованный участок памяти для хранения данных определенного типа.

    Оператор - наименьшая автономная часть программы, или команда

    Краткие итоги

    Нами были рассмотрены базовые понятия языка JavaScript, типы данных и различные операторы для работы с переменными. Данный курс не ставит своей целью подробное знакомство с техникой программирования на JavaScript, данный язык будет рассмотрен исключительно в контексте его применимости в рамках создания сайтов на базе HTML5.

    Для более детального ознакомления с JavaScript рекомендуется воспользоваться материалами, указанными в списке для самостоятельного изучения.

    Список материалов для самостоятельного изучения

  • http://javascript.ru/basic/types
  • http://design.originweb.info/javascript/variables.html
  • http://www.i2r.ru/static/372/out_10354.shtml
  • http://uroki-javascript.ru/js/js_special_characters.php
  • http://design.originweb.info/addon/symbols.html
  • http://js-help.net/text/osnovy_yazyka/tip_dannyh/undefin_null.php
  • http://javascript.ru/NaN
  • http://vvz.nw.ru/Lessons/JavaScript/operators.htm
  • http://javascript.ru/arithmetic
  • http://www.i2r.ru/static/372/out_10767.shtml
  • http://learn.javascript.ru/conditional-if
  • http://javascript.ru/cond
  • http://javascript.ru/unsorted/html-css-manual
  • http://javascript.ru/manual
  • Вернуться к учебному плану