Инфоурок Информатика КонспектыКонспект по JavaScript "Логические операторы"

Конспект по JavaScript "Логические операторы"

Скачать материал

Дисциплина: МДК 02.01 Разработка, внедрение и адаптация ПО отраслевой направленности. Раздел 3. Программирование динамического контента  языками сценариев

Группа: ПИ-41 (прикладная информатика в дизайне)

Дата: 23.09.2015

Общее количество студентов: 10

Присутствовало:

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

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

Задачи:

Обучающие:

·         Определение операторов

·         Виды операторов

·         Применение логических операторов на практике

Развивающие:

·       Развивать технические способности студентов;

·       Активировать мыслительную деятельность студентов;

Воспитательные:

·       Воспитание информационной культуры студентов, внимательности, аккуратности; дисциплинированности, усидчивости.

Тип урока: комбинированный

Формы работы: фронтальная, коллективная.

Техническо-материальная база:

1.                      Интерактивная доска (проецирующий экран);

2.                      Проектор;

3.                      Компьютер, входящий в локальную сеть с выходом в интернет;

4.                      Магнитно-маркерная доска.

Ход урока.

  1. Организационный момент:

-предварительная организация группы (проверка отсутствующих, организация внимания).

      2. Актуализация знаний учащихся:

         - объявление темы и цели урока.

3.      Работа с теоритическим материалом(35 минут)

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

Для операций над логическими значениями в JavaScript есть || (ИЛИ), && (И) и ! (НЕ).

Хоть они и называются «логическими», но в JavaScript могут применяться к значениям любого типа и возвращают также значения любого типа.

|| (ИЛИ)

Оператор ИЛИ выглядит как двойной символ вертикальной черты:

result = a || b;

Логическое ИЛИ в классическом программировании работает следующим образом: «если хотя бы один из аргументов true, то возвращает true, иначе — false». В JavaScript, как мы увидим далее, это не совсем так, но для начала рассмотрим только логические значения.

Получается следующая «таблица результатов»:

alert( true || true ); // true
alert( false || true ); // true
alert( true || false ); // true
alert( false || false ); // false

Если значение не логического типа — то оно к нему приводится в целях вычислений. Например, число 1будет воспринято как true, а 0 — как false:

Короткий цикл вычислений

JavaScript вычисляет несколько ИЛИ слева направо. При этом, чтобы экономить ресурсы, используется так называемый «короткий цикл вычисления».

Допустим, вычисляются несколько ИЛИ подряд: a || b || c || .... Если первый аргумент — true, то результат заведомо будет true (хотя бы одно из значений — true), и остальные значения игнорируются.

Это особенно заметно, когда выражение, переданное в качестве второго аргумента, имеет сторонний эффект— например, присваивает переменную.

При запуске примера ниже присвоение x не произойдёт:

var x;
true || (x = 1);
alert(x); // undefined, x не присвоен

…А в примере ниже первый аргумент — false, так что ИЛИ попытается вычислить второй, запустив тем самым присваивание:

var x;
false || (x = 1);
alert(x); // 1

Значение ИЛИ

|| запинается на «правде»,  && запинается на «лжи».

Итак, как мы видим, оператор ИЛИ вычисляет ровно столько значений, сколько необходимо — до первого true.

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

Например:

alert( 1 || 0 ); // 1
alert( true || 'неважно что' ); // true
alert( null || 1 ); // 1
alert( undefined || 0 ); // 0

Это используют, в частности, чтобы выбрать первое «истинное» значение из списка:

var undef; // переменная не присвоена, т.е. равна undefined
var zero = 0;
var emptyStr = "";
var msg = "Привет!";
var result = undef || zero || emptyStr || msg || 0;
alert( result ); // выведет "Привет!" - первое значение, которое является true

Если все значения «ложные», то || возвратит последнее из них:

alert( undefined || '' || false || 0 ); // 0

Итак, оператор || вычисляет операнды слева направо до первого «истинного» и возвращает его, а если все ложные — то последнее значение.

Иначе можно сказать, что «|| запинается на правде».

&& (И)

Оператор И пишется как два амперсанда &&:

result = a && b;

В классическом программировании И возвращает true, если оба аргумента истинны, а иначе — false:

alert( true && true ); // true
alert( false && true ); // false
alert( true && false ); // false
alert( false && false ); // false

К И применим тот же принцип «короткого цикла вычислений», но немного по-другому, чем к ИЛИ.

Если левый аргумент — false, оператор И возвращает его и заканчивает вычисления. Иначе — вычисляет и возвращает правый аргумент.

Например:

// Первый аргумент - true,
// Поэтому возвращается второй аргумент
alert( 1 && 0 ); // 0
alert( 1 && 5 ); // 5
// Первый аргумент - false,
// Он и возвращается, а второй аргумент игнорируется
alert( null && 5 ); // null
alert( 0 && "не важно" ); // 0

Можно передать и несколько значений подряд, при этом возвратится первое «ложное» (на котором остановились вычисления), а если его нет — то последнее:

alert( 1 && 2 && null && 3 ); // null
alert( 1 && 2 && 3 ); // 3

Итак, оператор && вычисляет операнды слева направо до первого «ложного» и возвращает его, а если все истинные — то последнее значение.

Иначе можно сказать, что «&& запинается на лжи».

Приоритет у && больше, чем у ||

Приоритет оператора И && больше, чем ИЛИ ||, так что он выполняется раньше.

Поэтому в следующем коде сначала будет вычислено правое И: 1 && 0 = 0, а уже потом — ИЛИ.

alert( 5 || 1 && 0 ); // 5

 ! (НЕ)

Оператор НЕ — самый простой. Он получает один аргумент. Синтаксис:

var result = !value;

Действия !:

1.                  Сначала приводит аргумент к логическому типу true/false.

2.                  Затем возвращает противоположное значение.

Например:

alert( !true ); // false
alert( !0 ); // true

В частности, двойное НЕ используют для преобразования значений к логическому типу:

alert( !!"строка" ); // true
alert( !!null ); // false

4.      Практическое занятие (30 минут)

Что выведет код ниже?

alert( null || 2 || undefined );

Что выведет код ниже?

alert( alert(1) || 2 || alert(3) );

Что выведет код ниже?

alert( 1 && null && 2 );

Что выведет код ниже?

alert( alert(1) && alert(2) );

Что выведет код ниже?

alert( null || 2 && 3 || 4 );

Напишите выражение, истинное тогда и только тогда, когда:

  1. Значение целой переменной m делится нацело на значение целой переменной k;
  2. Значения вещественных переменных A, B и C образуют неубывающую последовательность;
  3. Значение переменной x является наибольшим из трех попарно различных значений x, y, z.

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Конспект по JavaScript "Логические операторы""

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Юрист

Получите профессию

Копирайтер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 665 910 материалов в базе

Скачать материал

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 20.02.2017 826
    • DOCX 35.4 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Иванова Мария Александровна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Иванова Мария Александровна
    Иванова Мария Александровна
    • На сайте: 8 лет и 6 месяцев
    • Подписчики: 1
    • Всего просмотров: 14876
    • Всего материалов: 19

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Копирайтер

Копирайтер

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Информационные системы и технологии: теория и методика преподавания в профессиональном образовании

Преподаватель информационных систем и технологий

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Этот курс уже прошли 13 человек

Курс повышения квалификации

Организация преподавания информационных систем и технологий в профессиональном образовании

36 ч. — 180 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Сейчас обучается 20 человек из 14 регионов
  • Этот курс уже прошли 75 человек

Курс профессиональной переподготовки

Разработка и сопровождение требований и технических заданий на разработку и модернизацию систем и подсистем малого и среднего масштаба и сложности

Системный аналитик

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Сейчас обучается 65 человек из 33 регионов
  • Этот курс уже прошли 84 человека

Мини-курс

Организация и планирование воспитательной работы в СПО

6 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Культурное наследие России: язык и фольклор

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Этот курс уже прошли 18 человек

Мини-курс

Налог на прибыль и учет доходов/расходов

2 ч.

780 руб. 390 руб.
Подать заявку О курсе