Томский политехнический университет
Опубликован: 01.08.2012 | Доступ: свободный | Студентов: 17331 / 1604 | Оценка: 3.91 / 4.09 | Длительность: 12:32:00
Лекция 12:

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

< Лекция 11 || Лекция 12: 12 || Лекция 13 >

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

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

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

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

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

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

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

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

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

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

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

Таблица 11.3.
Оператор Использование Описание
Логическое И (&&) 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 рекомендуется воспользоваться материалами, указанными в списке для самостоятельного изучения.

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

< Лекция 11 || Лекция 12: 12 || Лекция 13 >
Эмиль Галеев
Эмиль Галеев

По каким то причинам не сохраняется текст. И не выдает сообщение об ошибке если текста нет. Проверил все внимательно проблем в написании нет. Вопрос почему он не сохраняет?

Алексей Вычегжанин
Алексей Вычегжанин

http://www.intuit.ru/studies/courses/3734/976/lecture/27486?page=3

Заполнил html, js и css-файлы согласно рекомендациям. После запуска главной страницы в панели разработчика браузера, во вкл. Console, выдает сообщение об ошибке:

"script.js:85 Uncaught TypeError: Cannot read property 'addEventListener' of null"

, ссылаясь на строку js-файла (функция load()):

" audio.addEventListener('ended', function () "

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

Функция добавления записей в плейлист не работает. Соответственно сам плей-лист и полоса прокрутки не открываются.

Дмитрий Дергилев
Дмитрий Дергилев
Россия, Орск, Гимназия №1, 2013