|
|||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Тема: Математические функции, дата и время, работа со строками. Создание пользовательских объектов, их настройка
План:
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+"братья"; Переносить часть строки на новую строчку нельзя. В тексте строки нельзя использовать двойные или одинарные кавычки и косую черту "\". Если же необходимо этими символами все-таки воспользоваться, то применяют управляющие текстовые и восьмеричные константы:
Пример: 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);
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.01 сек.) |