Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема: Математические функции, дата и время, работа со строками. Создание пользовательских объектов, их настройка




Старшинство операций

условное выражение: "?:";

логическое "ИЛИ": "||";

логическое "И": "&&";

побитовое "ИЛИ": "|";

побитовое "XOR": "^";

побитовое "И": "&";

сравнение на равенство "= =", "!=";

сравнение: "<", "<=", ">", ">=";

побитовый сдвиг: "<<", ">>", ">>>";

сложение, вычитание: "+", "-";

умножение, деление: "*", "/";

отрицание, инкремент, декремент: "!", "~", "++", "--";

скобки: "()", "[ ]".

 

 

4. Циклы и управляющие операторы.

Оператор if – else (условный оператор):

Синтаксис:

if (выражение) {операторы;} else {операторы;}

Пример:

1) if (x==2 && x!=3) {/*операторы выполняются если x равен 2 и не равен 3*/} else { /*операторы */}

2) if (x==2) { /*операторы */}

Оператор while (цикл)

Синтаксис:

1) while (выражение) {операторы;}

2) do {операторы;} while (выражение);

Пример:

1) while(x==2 && x!=3) {x++; /* и др. операторы - выполняются пока x равен 2 и не равен 3 */}

2) do {/*операторы */} while (x==2);

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

Синтаксис:

1) for (счетчик=исходное_значение; (условие_остановки); шаг) {/*операторы */}

Пример:

1) for (i=0, j=10; ((i >100) | | yslovie_J ()); i++, raschet_J ()) {/*операторы */}

2) for (i=0; i==100; i++) {/*операторы */}

Операторы switch

Синтаксис:

switch (переключатель) {

case значение1: оператор1; операторN; break;

………………………………………………..

case значениеN: оператор1; операторN; break;

default: оператор1; операторN; break;}

Пример:

<HTML> <BODY> <SCRIPT LANGUAGE="JavaScript">

where = window.prompt("Куда заглянем сегодня?");

switch (where) {

case "Netscape": window.location="http://www.netscape.com"; break;

case "Microsoft": window.location="http://www.microsoft.com"; break;

case "Yahoo": window. location=" http: / /www. yahoo. com"; break;

default: window.location="http://www.mcp.com"; }

</SCRIPT> </BODY> </HTML>

Контрольные вопросы:

1. Какие типы данных поддерживает JavaScript?

2. Как описать переменную в языке?

3. Назначение слова var?

4. Как делятся переменные в JavaScript?

5. Как можно преобразовать типы данных?

6. Как объявляется массив в JavaScript?

7. Перечислите арифметические операции?

8. Перечислите логические операции?

9. Перечислите операторы цикла языка JavaScript?

10. Запишите синтаксис условного оператора if – else.

Домашнее задание:

[7], с. 16-28


 

План:

 

1. Математические функции, дата и время, работа со строками.

2. Использование объекта event в обработчике событий.

3. Создание пользовательских объектов.

4. Настройка встроенных объектов web-браузера.

 

1. Математические функции, дата и время, работа со строками

Математические функции:

Класс Math, который предоставляет некоторые полезные математические и тригонометрические функции.

Пример:

chislo1 = Math.min (100, 700); // Возвращает минимальное значения из двух чисел 100 и 700

chislo2 = Math.max (100, 700); // Возвращает максимальное значения из двух чисел 100 и 700

chislo3 = Math.abs (-3); // Возвращает абсолютное значение числа

chislo4 = 10*Math.random () + 1; // Возвращает случайное число от 1 до 10.

chislo5 = Math.round (10.5); //Округление по правилам математики.

Результат = 11

chislo6 = Math.floor(10.7); //Округление всегда в меньшую сторону. Результат = 10

chislo7 = Math.ceil (10.3); //Округление всегда в большую сторону. Результат = 11

chislo8 = Math.sqrt (4); //Квадратный корень из 4.

chislo9 = Math.pow (7, 1/3); // Число 7 в степени 1/3

chislo10 = Math.log (7); // Натуральный логарифм числа 7.

chislo11 = Math.log (7) / Math.log (10); // Десятичный логарифм числа 7.

chislo12 = Math.exp (7); // Экспонента числа 7, т.е. e7. Существует константа Math.E

chislo13 = Math.sin (3.14); // Синус. Угол задается в радианах. Радианы=градусы*Math.PI / 180.

chislo14 = Math.cos (Math.PI / 2); // Косинус. Угол задается в радианах.

chislo15 = Math.tan (3.14); /* Тангенс. Существуют также методы asin(), acos(), atan(), означающие

арккосинус, арксинус и арктангенс, соответственно. */

Дата и время:

Для работы со значениями даты и времени можно воспользоваться следующими конструкциями:

timer2 = new Date (); // Создание объекта "дата"

vremya1 = timer2.getYear(); // Получить число лет, прошедших с 1900 г, т.е. для 2001 = 101

vremya2 = timer2.getMonth(); // Получить текущий месяц. Январь = 0, Февраль = 1 и т.д.

vremya3 = timer2.getDate(); // Получить текущую дату

vremya4 = timer2.getHours(); // Получить часы

vremya5 = timer2.getMinutes(); // Получить минуты

vremya6 = timer2.getSeconds(); // Получить секунды

vremya7 = timer2.getDay(); // Получить день недели: 0-воскресенье, 1-понедельник и т.д.

timer2.setYear(102); // Установить 2002 год

timer2.setMonth(11); // Установить 12-й месяц

timer2.setDate(20);

timer2.setHours(23);

timer2.setMinutes(5);

timer2.setSeconds(10);

Работа со строками:

Над строками можно выполнять некоторые функции, в результате которых создаются новые измененные строк. Пример:

komy = "вам"; // или komy = new String("вам");

summa = "Привет "+komy+"братья";

Переносить часть строки на новую строчку нельзя. В тексте строки нельзя использовать двойные или одинарные кавычки и косую черту "\". Если же необходимо этими символами все-таки воспользоваться, то применяют управляющие текстовые и восьмеричные константы:

Константа Значение
\n перевод строки
\f перевод формата
\r возврат каретки
\" \u0022 двойная кавычка
\' \u0027 одиночная кавычка
\\ \u005c обратная косая черта
\007 \u0007 звонок
\101 \u0041 буква"А"
\071 \u0039 цифра "9"

Пример:

primer = "На разных \n строках и \" в кавычках \" буква \110, со звонком \007"

Ниже приведены примеры некоторых функций для работы со строками:

stroka = “Это строка”; // создание строки stroke

otvet = stroka.startsWith(‘Это’); /* переменная otvet будет true (истина), если строка начинается со слова

“Это”, регистр учитывается */

otvet = stroka.endsWith(‘строка); /* переменная ответ будет true (истина), если строка кончается словом

“строка”, регистр учитывается */

otvet = stroka.indexOf('о'); // переменная otvet будет содержать номер позиции первой буквы "о" в строке

otvet = stroka.indexOf('о',otvet+1); /* после того, как в предыдущем примере будет найдена первая буква "о",

в этом примере поиск следующей буквы "о" в строке будет продолжен, начиная со следующей после "o" позиции. Так можно найти все буквы "о", продолжая поиск до тех пор, пока otvet!= 0*/

otvet = stroka.lastIndexOf('о'); // тоже самое, что и indexOf('о'), но поиск начинается с конца строки

otvet = stroka.lastIndexOf('о', otvet-1); // аналогично примеру выше

otvet = stroka.indexOf('Это'); /* можно определять позицию не только отдельного символа, но и подстроки */

bukva = stroka.charAt (3); /* в переменную bukva будет помещен 4-й символ строки (индекс первого символа строки = 0) */

stroka2 = stroka.subString(4); /* выделение подстроки из строки "stroka", начиная с 5-ой позиции и до конца строки */

stroka2 = stroka.subString(4, 9); /* выделение подстроки из строки "stroka", начиная с 5-ой и заканчивая 10-ой позицией строки */

stroka2 = stroka.replace('о', 'а'); // заменяет в строке все буквы "о" на букву "а"

stroka2 = stroka.toUpperCase(); // преобразует строку в верхний регистр

stroka2 = stroka.toLowerCase(); // преобразует строку в нижний регистр

chislo=10; stroka = String.valueOf(chislo); // переводит практически любой тип данных в тип String

 

2. Использование объекта event в обработчике события

 

Объект event используется в JavaScript версии 1.2 и выше. Это специальный объект, который отправляется в обработчик событий при возникновении любого события. Обработчик события получает этот объект в виде параметра. Свойства объекта event содержат данные о событии, которое произошло. Ниже приведен список всех свойств объекта event (для Microsoft Internet Explorer):

• type. Это тип произошедшего события, например mouseover.

• keyCode. Код нажатой пользователем клавиши.

• altKey. Принимает значение true, если удерживается клавиша "alt" и false в противном случае.

• ctrlKey. Принимает значение true, если удерживается клавиша "ctrl" и false в противном случае.

• shiftKey. Принимает значение true, если удерживается клавиша "shift" и false в противном случае.

• button. Код нажатой кнопки мыши.

• X и Y. Это координаты указателя мыши вдоль оси X и Y. Начало координат находится в левом верхнем углу окна Web-браузера.

• screenX и screenY. Это координаты указателя мыши вдоль оси X и Y. Начало координат находится в левом верхнем углу экрана.

Пример использования объекта Event для определения нажатой клавиши:

<HTML> <BODY onkeypress="window.alert('Вы нажали клавишу: '+String.fromCharCode(event.keyCode));">

</BODY> </HTML>

 

3. Создание пользовательских объектов

 

В JavaScript можно создавать собственные объекты и даже добавлять новые свойства и методы во встроенные объекты Web-браузера.

Создание собственного объекта происходит следующим образом:

1) Задается функция-конструктор объекта, инициализирующий его свойства и методы. Пример:

function Cartochka (name, address, telefon) {

this.name = name; this.address = address; this.telefon = telefon;

this. printMetod = printMetod; }

2) Описываются методы объекта, заданные в конструкторе. Пример:

function printMetod () {

i=this.name+"<BR>"+this.adres+"<BR>"+this.telefon+"<BR>";

document.writeln (i); }

3) Создание экземпляра объекта. Пример:

Ivan = new Cartochka ("Иван", "Мелитополь","555-00-00");

4) Использование свойств и методов объекта. Пример:

Ivan.telefon = "03"; Ivan.printMetod();

Полный текст соответствующего HTML-документа приведен ниже:

<HTML> <BODY> <SCRIPT LANGUAGE="JavaScript">

function printMetod () {

i=this.name+"<BR>"+this.adres+"<BR>"+this.telefon+"<BR>"

document.writeln(i) }

function Cartochka (name, adres, telefon) {

this.name = name; this.adres = adres; this.telefon = telefon;

this.printMetod = printMetod; }

Ivan = new Cartochka ("Иван", "Мелитополь","555-00-00");

Ivan.telefon = "03"; Ivan.printMetod();

</SCRIPT> </BODY> </HTML>

 

Создание иерархии подчиненных объектов реализуется так: в конструкторе объекта верхнего уровня записывается свойство, которое создает и указывает на объект нижнего уровня. Таким образом, создавая объект верхнего уровня, автоматически создается вся иерархия подчиненных объектов. В приведенном ниже примере, объект верхнего уровня kniga1, содержит массив подчиненных объектов Cartochka:

function Kniga () {

this. stranica = new Array(2);

this. stranica[0] = new Cartochka ("Иван", "Мелитополь","555-00-00");

this. stranica[1] = new Cartochka ("Петр", "Мелитополь","555-00-01");

this. stranica[2] = new Cartochka ("Игорь", "Мелитополь","555-00-02");}

kniga1 = new Kniga ();

kniga1. stranica[1].name = "Иванов";

kniga1. stranica[1].printMetod();

 

4. Настройка встроенных объектов Web-браузера

 

Добавление свойств и методов в уже существующий встроенный объект проводится с помощью ключевого слова prototype (другими словами, создается прототип уже существующего объекта. Prototype — это, в данном случае, название конструктора объекта.). Последовательность действий следующая:

1) Описать функцию (переменную), которая станет новым методом (свойством) встроенного объекта.

Пример:

function Metod () { document.writeln (" Этот метод добавлен ко встроенному объекту! "); }

Svoistvo = " Это новое свойство встроенного объекта ";

2) Добавить метод (свойство) во встроенный объект, используя ключевое слово prototype. Пример:

String.prototype.newMetod = Metod;

String.prototype.newSvoistvo = Svoistvo;

3) Использование методов и свойств. Пример:

stroka = new String ("Строка");

stroka. newMetod (); document.writeln (stroka. newSvoistvo);

 




Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 388; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.048 сек.