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

Сценарии (скрипты)

http://javascript.ru/

Скрипт, выполняемый на стороне клиента (клиентский), это программа, которая может быть загружена вместе с документом HTML или встроена прямо в него. Программа выполняется на клиентской машине при загрузке документа или в другое время, например, если активируется гиперссылка. Поддержка скриптов языком HTML не зависит от языка скриптов.

 

Скрипты, таким образом, позволяют авторам расширить возможности документов HTML, как активные, так и интерактивные. Например:

· Сценарии могут выполняться по мере загрузки документа для динамической модификации содержимого этого документа.

· Сценарии могут находиться в форме и обрабатывать ввод данных пользователем. Части формы могут динамически заполняться на основе значений других полей. Можно также проверять соответствие введённых данных значениям определённого диапазона, эти поля могут быть взаимосвязаны и т.д.

· Скрипты могу запускаться событиями, происходящими в документе: загрузка документа, выгрузка, передача фокуса элементу, движение мыши и т.д.

· Скрипты могут быть связаны с ЭУ (напр., кнопками) для создания графического интерфейса пользователя.

 

Есть два вида скриптов, которые могут быть включены в документ HTML:

· выполняемые однократно при загрузке документа. Скрипты внутри элемента SCRIPT выполняются при загрузке документа. Для браузеров, которые не могут или "не хотят" выполнять скрипты, авторы могут включить альтернативное содержание с помощью элемента NOSCRIPT.

· выполняемые каждый раз при возникновении определённого события. Эти скрипты могут быть подключены к нескольким элементам с помощью атрибутов внутренних событий.

 

SCRIPT

Для вставки скрипта используются теги <script></script>.

Список атрибутов тега script:

· Type – (обязательный) используется для задания языка. Например:

· < script type="text/javascript">

· Language – (не рекомендуется) определяет язык скрипта (ранее использовался вместо type). Например: language="JavaScript"

· Src – URL внешнего скрипта.

· Defer – если задан, то выполнение скрипта может быть отложено.

Блок <script></script> обычно размещается внутри блока HEAD. Возможно создание дополнительных блоков сценариев, в том числе и в блоке BODY.

 

NOSCRIPT

Блок <NOSCRIPT> </NOSCRIPT> даёт возможность предоставить альтернативное содержимое, если скрипт не выполняется.

Есть вероятность того, что браузеры, не распознающие элемент SCRIPT, будут рассматривать его содержимое как текст. Некоторые машины скриптов, в том числе для языков JavaScript, VBScript и Tcl, разрешают включение операторов скрипта в комментарий. Браузеры, не распознающие элемент SCRIPT, будут тогда игнорировать комментарий, в то время как более совершенные машины скриптов "поймут", что скрипт внутри комментария должен выполняться.

Машина JavaScript допускает "<!--" как начало элемента SCRIPT и игнорирует оставшиеся символы до конца строки. JavaScript интерпретирует "//" как начало комментария до конца текущей строки. Это необходимо, чтобы спрятать "-->" от разборщика JavaScript.

 

Язык JavaScript

 

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

Комментарии в JavaScript могут быть однострочными и многострочными. Однострочные комментарии начинаются с символов // и продолжаются до конца текущей строки, как показано в приведенном выше примере. Многострочные комментарии заключаются в маркеры /* и */, например:

/* Это пример комментария,

содержащего несколько строк. */

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

break delete function return typeof

case do if switch var

catch else in this void

continue finally instanceof throw while

default for new try with

Идентификаторы используются в JavaScript в качестве имен переменных. Они могут начинаться с латинской буквы, символа "$" (знак доллара) или символа "_" (подчеркивание) и должны состоять из латинских букв, цифр и символов "$" и "_". Знак доллара рекомендуется использовать только в идентификаторах программ, которые автоматически генерируются другими программами. Идентификаторы не могут совпадать с зарезервированными словами. Два идентификатора считаются равными, если они текстуально совпадают; это означает, что JavaScript проводит различие между строчными и прописными буквами.

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

· С помощью ключевого слова var, например, var x; или var x = 21;.

· Просто присваиванием переменной значения, например x = 21;.

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

var a = 0, b, c = "текст", x, y = false;

Переменная декларированная вне поля действия функций является глобальной. Переменная внутри функции имеет аналогичную область действия и называется локальной.

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

· нулевая константа null типа Null;

· логические константы true (истина) и false (ложь) типа Boolean;

· строковые константы типа String, например, "Привет всем!";

· числовые константы типа Number, например, 21 или 3.1415926.

Выражения в JavaScript, как и в других языках программирования, представляют собой комбинации переменных, констант и операций, дающие осмысленный результат. Этот результат может быть числом, текстовой строкой, логическим значением или объектом. Соответственно все выражения JavaScript подразделяются на арифметические, строковые, логические и объектные.

Все операции в JavaScript подразделяются на следующие: операции сравнения, арифметические операции, битовые операции, логические операции, строковые операции, операции присваивания, прочие операции.

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

Операция Название Описание
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

 

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

Операция Название Описание
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"

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: