- •Лекции по JavaScript Что такое javascript?
- •Среда разработки программ JavaScript
- •Что умеет javascript?
- •Переменные
- •Типы переменных
- •Массивы Создание
- •Аргументы
- •Описание, примеры
- •Методы объекта Array
- •Многомерные массивы
- •Объект Boolean
- •Объект Number
- •Объект Math
- •Объект String
- •Основы работы со строками
- •Использование кавычек
- •Встроенные функции
- •Строки и числа
- •Преобразование «Число → строка»
- •Преобразование «Строка → число»
- •Объект Date
- •Объект Global
- •Операторы и операции Операторы Javascript
- •Оператор break
- •Оператор comment
- •Оператор continue
- •Перебор свойств, кроме унаследованных
- •Оператор function
- •Оператор if...Else
- •Оператор return
- •Оператор var
- •Оператор while
- •Оператор with
- •Логические операторы
- •Операции сравнения
- •Арифметические операции
- •Битовые операции
- •Логические операции
- •Строковые операции
- •Операции присваивания
- •Прочие операции Условная операция
- •Операция запятая
- •Операция delete
- •Операция in
- •0 In langs // возвращает true
- •4 In langs // возвращает false Операция instanceof
- •Операция new
- •Операция this
- •Операция typeof
- •Операция void
- •Порядок выполнения операций
- •Функции
- •Функции - объекты
- •Области видимости
- •Параметры функции
- •Работа с неопределенным числом параметров
- •Пример передачи функции по ссылке
- •Пример использования:
- •Сворачивание параметров в объект
- •Объекты, свойства и методы Основные понятия
- •Объект JavaScript
- •Создание объектов с помощью инициализатора
- •Создание объектов с помощью конструктора
- •Создание методов
- •Изменение прототипа объекта
- •Удаление объектов
- •Вывод информации в строку состояния
- •Объект location
- •Проигрывание wav-файлов
- •Плавное изменение цвета фона документа html
- •Объект window.
- •Динамическое изменение страницы
- •Прокручивание документа
- •Параметры
- •Закрывающий тег
- •Аргументы
- •Значение по умолчанию
- •Параметр alt Описание
- •Значение по умолчанию
- •Параметр value Описание
- •Синтаксис
- •Параметры
- •Закрывающий тег
- •События
- •Когда использовать
- •Через свойство объекта
- •Основные события javascript
- •If (условие)
- •Способы открытия нового окна с помощью js
- •Модальное окно
- •X: 1, // добавляем свойство
- •Установка веб-сервера Apache и средств программирования под Windows
- •Что такое хостинг и где взять место под страницу.
- •Объектная Модель. Детали.
- •Языки на базе классов и языки на базе прототипов
- •Определение класса
- •Подклассы и наследование
- •Добавление и удаление свойств
- •Отличия. Резюме.
- •Пример Employee
- •Создание иерархии
- •Свойства объекта
- •Наследование свойств
- •Добавление свойств
- •Более гибкие конструкторы
- •И снова о наследовании свойств
- •Локальные и наследуемые значения
- •Определение взаимоотношений экземпляров
- •Глобальная информация в конструкторах
- •Нет множественного наследования
Перебор свойств, кроме унаследованных
Для перебора всех свойств объекта, кроме унаследованных, используется конструкция for..in с дополнительной проверкой.
for(var prop in object) {
// если свойство унаследовано – continue
if (!object.hasOwnProperty(prop)) continue
// работа с prop
...
}
В следующем примере свойство print участвовало бы в цикле, если бы там не было проверки.
Пример: перебор без унаследованных свойств
показать чистый исходник в новом окне Скрыть/показать номера строк печать кода с сохранением подсветки
Object.prototype.print = function() {
document.write(this)
}
var a = {
p1: 1,
p2: 2
}
for(var p in a) {
if (!a.hasOwnProperty(p)) continue
alert(p)
}
Оператор function
Объявляет функции языка JavaScript, требует указания имени name и списка параметров param. Для того чтобы возвращать значение, функция должна иметь в себе оператор return, который указывает возвращаемое функцией значение. Оператор функции нельзя вкладывать в другую функцию. Принято следующее написание этого оператора:
function name([param] [, param] [..., param])
{
...statements...
}
Примеры
Эта функция возвращает общую долларовую сумму продажи, когда дано число единиц, продаваемых изделий a, b, и c.
function calc_sales(units_a, units_b, units_c) {
return units_a*79 + units_b*129 + units_c*699}
Оператор if...Else
Оператор if...else - это условный оператор, который выполняет первый набор утверждений, если значение condition истинно. В противном случае выполняет второй набор утверждений, заключенные в операторе else, если условие ложно. Если набор утверждений (statments), заключенные в фигурные скобки { } содержит один оператор, то скобки можно опустить. Условные операторы могут быть вложены друг в друга без ограничений.
if (condition) {
...statements...
}[else {
else
...statements...
}]
Примеры
Следующая функция преобразует значение минут текущего времени в двузначное число для использования в программе "Часы":
fanction makeMinutes() {
var minstring="";
var now = new Date();
var min = Date.getMinutes();
if (min<10) {
minstring+=":0"+min;}
else{
minstring+=":"+min;}
return minstring
}
Оператор return
Оператор return указывает значение, которое будет возвращено функцией.
return expression;
Примеры
Следующая функция возвращает квадрат ее аргумента, x, где x - это число:
function square( x ) {
return x * x
}
Нижеприведенный пример соединяет три строки вместе, используя в качестве разделителя запятую:
function stringAssemble(string1,string2,string3) {
return string1+","+string2+","+string3
}
Оператор var
Оператор var объявляет переменную varname и дополнительно может присваивать ей значение. Имя переменной varname может быть любой идентификатор, и значение может быть любое выражение. Область действия переменных, является текущая функция или, если переменные, объявленные вне функции, то весь текущий документ.
Использование var вне функции необязательно; вы можете описать переменную, просто присваивая ей это значение. Однако, использование var необходимо в функциях, так как может быть глобальная переменная такого же имени.
var VariableName [= value] [..., VariableName [= value] ]
Примеры
var num_hits = 0, cust_no = 0
Приведем пример, когда переменная globalString может быть использована в любой функции или скрипте текущего документа, а переменная localString видна только внутри функции bracket:
var globalString
function bracket(){
var localString="["+globalString+"]";
document.write(localString);
}