KEMBAR78
javascript | PPS
Сценарии в HTML
 язык JavaScript
Сценарии в HTML, язык JavaScript


   Внедрение сценариев в HTML документ
   Введение в JavaScript
   Синтаксис языка
   Переменные и типы данных
   Управляющие конструкции языка
Внедрение сценариев в HTML документ

  http://www.w3.org/TR/html4/interact/scripts.html#h-18.3.1
<!--                                <script
  Старый стиль -                      type="text/javascript">
  использование атрибута            <!-- для старых браузеров
  LANGUAGE
                                    function square(i)
  В текущей версии HTML
  считается нежелательным           {
-->                                     return i * i;
<script                             }
  language="javascript">            document.write(square(5));
  // Так писать не надо!            // -->
</script>                           </script>


 <noscript>
  Ваш браузер не поддерживает сценарии
 </noscript>
Введение в JavaScript

  Интерпретируемый язык, основан на синтаксисе
  языка Java
  Регистро-чувствительные конструкции и операторы
  Концом оператора служит символ «;»
  Комментарии
     Строчный
       var i = 0; // Счетчик цикла
     Блочный
       /* Здесь и далее
       обработка ввода */
Нотация – устоявшиеся правила записи

   «Верблюжья нотация» записи
      Все имена – маленькими буквами
      На стыке слов – буква Большая
      Переменные и свойства – существительные
      Массивы и коллекции – существительные во множественном
      числе
      Функции и методы – глаголы
      Названия классов – с Большой буквы

 var myCounter = 1;
 var userPreferedColors = new Array();
 var xmlDOM = new MyDOM();
 function getUserCounter(userID) { . . . }
Переменные

  Переменные объявляются ключевым словом var
  Переменные принимают тот тип данных, который в
  них присваивается


var myCounter = 1;
myCounter = false;
myCounter = "Строка";
Типы данных

  Undefined Type
  Null Type
  Boolean Type
  String Type
  Number Type
  Object Type
Undefined Type и Null Type

  Undefined Type – неопределенный тип, любая
  необъявленная переменная имеет такой тип


  Null Type – отсутствие значения, значение null


var myCounter = 1;
. . .
myCounter = null;
Boolean Type – Логический тип данных

  Значения true и false
  Определены следующие операторы:
    Логическое И:    &&
    Логическое ИЛИ: ||
    Логическое НЕ:   !


var a = true;
var b = false;
c = a && b; // результат false
c = a || b; // результат true
c = !a;      // результат false
String Type – Строковый тип

  Строка – набор символов, обрамляется «"» или «’»
  Операции над строками:
     Конкатенация – объединение строк: a + b
     Вставка специальных символов




 var str1 = "Строка текста ";
 var str2 = 'Еще одна строка текста';
 var str3 = "1 t 2 n Строка";
Number Type – Числовой тип

  Целые числа
  Числа с плавающей запятой
  Специальные значения: NaN,   +Infinity, -Infinity

  Допустимые операции
      +             сложение
      -             вычитание
      /             деление
      *             умножение
      %             остаток от деления
Object Type – объектный тип

  Объекты
     Свойства
     Методы
  Создание объектов
    var obj = new MyObject();
    obj.name = "Имя пользователя";
    obj.sayHello();
Лабораторная работа

            Написание сценария. Работа с переменными
            20 мин.



            1    Создайте файл lab-1-1.html

                 Создайте переменные: строка 1 и
            2    строка 2, объедините строки
                 Создайте переменные 3.14 и FF
            3    Перемножьте их


            Совет. Для вывода значений воспользуйтесь функцией
            alert()
Операторы и управляющие конструкции

  Условный оператор
  Оператор переключения
  Циклы
  Функции
  Оператор обработки исключений
Условный оператор if

  if (bool) operator;


  if (bool)
  {
      operator1;
      operator2;
  }
Условный оператор if-else

  if (bool)
  {
      // Если ИСТИНА
      operator1;
      operator2;
  }
  else
  {
       // Если ЛОЖНО
      operator3;
      operator4;

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

      ==    Равно
      ===   Равно с учетом типа
      !=    Равно
      >     Больше
      <     Меньше
      >=    Больше-Равно
      <=    Меньше-Равно
Условное присвоение

 var a = 10;
 var b = (a > 1) ? 100 : 200;
 alert(b);
Оператор переключения

 var a = 2;
 switch (a)
 {
   case 0:
   case 1:
        alert("Один");
        break;
   case 2:
        alert("Два");
        break;
   default:
        alert("Много");
 }
Демонстрация

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



           1   Оператор if


           2   Условное присваивание


           3   Оператор переключения
Циклы

  Цикл перечисления for
  Цикл «для каждого» for in
  Цикл с предусловием while
  Цикл с постусловием do . . . while
Цикл перечисления for

 for (var i = 0; i < 10; i++)
 {
     if (i == 4) continue;
     // ...
     document.write(i + "<br>");
  // ...
     if (i == 8) break;
 }
Цикл «для каждого» for in

     Предназначен для прохода по массивам, коллекциям
     и объектам


 for (var prop in navigator)
 {
     document.write(prop + "<br>");
 }
Цикл с предусловием while

    Выполняется пока условие истинно
    Условие проверяется ПЕРЕД очередным проходом
    Если условие ложно – не выполняется ни разу
var a = 1;
while (a < 1000)
{
    a *= 2;
    if (a == 32) continue;
    document.write(a + "<br>");
    if (a == 256) break;
}
Цикл с постусловием do . . . while

    Выполняется пока условие истинно
    Условие проверяется ПОСЛЕ очередным проходом
    Если условие ложно – выполнится хотя бы один раз
var a = 1;
do
{
    a *= 2;
    if (a == 32) continue;
    document.write(a + "<br>");
    if (a == 256) break;
} while (a < 1000);
Демонстрация

           Операторы цикла



           1   Цикл for


           2   Цикл while


           3   Цикл do . . . while
Оператор обработки исключений

 try
 {
     // Блок кода
     badOperator;
 }
 catch (e)
 {
     alert("Ошибка: " + e.message);
 }
Оператор обработки исключений – финализация

 try
 {
   // Блок кода
   badOperator;
 }
 catch (e)
 {
   alert("Ошибка: " + e.message);
 }
 finally
 {
    alert("Завершающие действия");
 }
Лабораторная работа

            Использование операторов языка
            30 мин


                С помощью циклов сформируйте
            1   таблицу 9 х 9
                В ячейки таблицы выведите
            2   результат умножения i * j
                Первый ряд и первую колонку
            3   выведите с красным фоном


            Совет. В качестве примера используйте файл
            for-2.html
Итоги


   Внедрение сценариев в HTML документ
   Переменные
   Типы данных
   Условные операторы
   Операторы циклов
   Оператор обработки исключений

javascript

  • 1.
    Сценарии в HTML язык JavaScript
  • 2.
    Сценарии в HTML,язык JavaScript Внедрение сценариев в HTML документ Введение в JavaScript Синтаксис языка Переменные и типы данных Управляющие конструкции языка
  • 3.
    Внедрение сценариев вHTML документ http://www.w3.org/TR/html4/interact/scripts.html#h-18.3.1 <!-- <script Старый стиль - type="text/javascript"> использование атрибута <!-- для старых браузеров LANGUAGE function square(i) В текущей версии HTML считается нежелательным { --> return i * i; <script } language="javascript"> document.write(square(5)); // Так писать не надо! // --> </script> </script> <noscript> Ваш браузер не поддерживает сценарии </noscript>
  • 4.
    Введение в JavaScript Интерпретируемый язык, основан на синтаксисе языка Java Регистро-чувствительные конструкции и операторы Концом оператора служит символ «;» Комментарии Строчный var i = 0; // Счетчик цикла Блочный /* Здесь и далее обработка ввода */
  • 5.
    Нотация – устоявшиесяправила записи «Верблюжья нотация» записи Все имена – маленькими буквами На стыке слов – буква Большая Переменные и свойства – существительные Массивы и коллекции – существительные во множественном числе Функции и методы – глаголы Названия классов – с Большой буквы var myCounter = 1; var userPreferedColors = new Array(); var xmlDOM = new MyDOM(); function getUserCounter(userID) { . . . }
  • 6.
    Переменные Переменныеобъявляются ключевым словом var Переменные принимают тот тип данных, который в них присваивается var myCounter = 1; myCounter = false; myCounter = "Строка";
  • 7.
    Типы данных Undefined Type Null Type Boolean Type String Type Number Type Object Type
  • 8.
    Undefined Type иNull Type Undefined Type – неопределенный тип, любая необъявленная переменная имеет такой тип Null Type – отсутствие значения, значение null var myCounter = 1; . . . myCounter = null;
  • 9.
    Boolean Type –Логический тип данных Значения true и false Определены следующие операторы: Логическое И: && Логическое ИЛИ: || Логическое НЕ: ! var a = true; var b = false; c = a && b; // результат false c = a || b; // результат true c = !a; // результат false
  • 10.
    String Type –Строковый тип Строка – набор символов, обрамляется «"» или «’» Операции над строками: Конкатенация – объединение строк: a + b Вставка специальных символов var str1 = "Строка текста "; var str2 = 'Еще одна строка текста'; var str3 = "1 t 2 n Строка";
  • 11.
    Number Type –Числовой тип Целые числа Числа с плавающей запятой Специальные значения: NaN, +Infinity, -Infinity Допустимые операции + сложение - вычитание / деление * умножение % остаток от деления
  • 12.
    Object Type –объектный тип Объекты Свойства Методы Создание объектов var obj = new MyObject(); obj.name = "Имя пользователя"; obj.sayHello();
  • 13.
    Лабораторная работа Написание сценария. Работа с переменными 20 мин. 1 Создайте файл lab-1-1.html Создайте переменные: строка 1 и 2 строка 2, объедините строки Создайте переменные 3.14 и FF 3 Перемножьте их Совет. Для вывода значений воспользуйтесь функцией alert()
  • 14.
    Операторы и управляющиеконструкции Условный оператор Оператор переключения Циклы Функции Оператор обработки исключений
  • 15.
    Условный оператор if if (bool) operator; if (bool) { operator1; operator2; }
  • 16.
    Условный оператор if-else if (bool) { // Если ИСТИНА operator1; operator2; } else { // Если ЛОЖНО operator3; operator4; }
  • 17.
    Операции сравнения == Равно === Равно с учетом типа != Равно > Больше < Меньше >= Больше-Равно <= Меньше-Равно
  • 18.
    Условное присвоение vara = 10; var b = (a > 1) ? 100 : 200; alert(b);
  • 19.
    Оператор переключения vara = 2; switch (a) { case 0: case 1: alert("Один"); break; case 2: alert("Два"); break; default: alert("Много"); }
  • 20.
    Демонстрация Условные операторы 1 Оператор if 2 Условное присваивание 3 Оператор переключения
  • 21.
    Циклы Циклперечисления for Цикл «для каждого» for in Цикл с предусловием while Цикл с постусловием do . . . while
  • 22.
    Цикл перечисления for for (var i = 0; i < 10; i++) { if (i == 4) continue; // ... document.write(i + "<br>"); // ... if (i == 8) break; }
  • 23.
    Цикл «для каждого»for in Предназначен для прохода по массивам, коллекциям и объектам for (var prop in navigator) { document.write(prop + "<br>"); }
  • 24.
    Цикл с предусловиемwhile Выполняется пока условие истинно Условие проверяется ПЕРЕД очередным проходом Если условие ложно – не выполняется ни разу var a = 1; while (a < 1000) { a *= 2; if (a == 32) continue; document.write(a + "<br>"); if (a == 256) break; }
  • 25.
    Цикл с постусловиемdo . . . while Выполняется пока условие истинно Условие проверяется ПОСЛЕ очередным проходом Если условие ложно – выполнится хотя бы один раз var a = 1; do { a *= 2; if (a == 32) continue; document.write(a + "<br>"); if (a == 256) break; } while (a < 1000);
  • 26.
    Демонстрация Операторы цикла 1 Цикл for 2 Цикл while 3 Цикл do . . . while
  • 27.
    Оператор обработки исключений try { // Блок кода badOperator; } catch (e) { alert("Ошибка: " + e.message); }
  • 28.
    Оператор обработки исключений– финализация try { // Блок кода badOperator; } catch (e) { alert("Ошибка: " + e.message); } finally { alert("Завершающие действия"); }
  • 29.
    Лабораторная работа Использование операторов языка 30 мин С помощью циклов сформируйте 1 таблицу 9 х 9 В ячейки таблицы выведите 2 результат умножения i * j Первый ряд и первую колонку 3 выведите с красным фоном Совет. В качестве примера используйте файл for-2.html
  • 30.
    Итоги Внедрение сценариев в HTML документ Переменные Типы данных Условные операторы Операторы циклов Оператор обработки исключений