Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
23-28.doc
Скачиваний:
8
Добавлен:
23.09.2019
Размер:
64.51 Кб
Скачать

25. Работа с повторяющимися задачами. Использование циклов в Java Script.

Цикл For

For - это самый простой и наглядный цикл в JavaScript. For - это цикл с параметром, который принято называть счётчик. Счётчик устанавливается для того, чтобы цикл сделал определённое количество итераций(иными словами - исполнил те команды, которые мы ему задали столько разов, сколько мы скажем в счётчике). Это и является основным его недостатком - нужно наперёд знать, сколько итераций нам нужно, чтобы добиться желаемого результата.

Давайте рассмотрим синтаксис и пример цикла for:

for ([а]; [b]; [c])

{

//между этими скобками нужно написать команды цикла

}

На место [а] можно записать не только начальное значение счётчика, но и выражение (включая и оператор присваивания) или же объявить новую переменную. В этом условии можно объявлять новую счётчик-переменную при помощи оператора var. Эта переменная не может быть локальной переменной самого цикла, она видна, и её можно использовать во всей области "видимости".

[b] - это выражение, которое будет вычисляться циклом между итерациями. Если оно верное (true), то цикл выполняет следующую итерацию, иначе - цикл заканчивается, управление программой переходит дальше, уже вне цикла, вызывая последующие за циклом операторы и команды.

[c] - это выражение, которое будет вычисляться циклом в конце завершения каждой итерации, перед проверкой второго условия - [b]. Обычно оно используется для увеличения(уменьшения) переменной-счетчика. Рассмотрим такие примеры цикла for:

//for со счетчиком

for (var i = 0; i < 10; i++) {

n += i;

}

//бесконечный цикл с выходом изнутри

for(;;) {

...

if (какое-то условие) break;

}

do while

Создает цикл с проверкой условия, выполняющееся после каждой итерации. Рассмотрим его синтаксис:

do {

statement; }

while (condition)

statement - это простой блок или же вызов javascript-а, который выполняется, пока условие condition верно.

condition - это выражение, которое вычисляется циклом каждый раз во время итерации. Если оно будет верно, statement выполняется еще раз, если же нет - выполняются операторы, стоящие после do while. Например:

i = 0;

do

{

i += 1;

document.write(i)

}

while (i < 9)

while

While - это цикл, который будет выполнятся до тех пор, пока эго условие верно(true). Условие проверяется перед каждой итерацией. Рассмотрим синтаксис:

while (condition)

statement

// например, цикл повторяется, пока n будет меньше 5:

n = 0

x = 0

//желательно инициализировать переменные цикла до него самого, или же с

помощью var в цикле.

while (n < 5) {

n ++

x += n

alert("n="+n+", x="+x)

}

26. Работа с повторяющимися задачами. Использование функций в Java Script.

Функция - это именованная последовательность операторов, которая инициализируется и выполняется простой ссылкой на имя функции. Синтаксис задания функций в JavaScript следующий:

function имя_функции([формальные_параметры]) {

[операторы]

[return выражение]

}

Вызов в сценарии:

имя_функции(список_фактических_параметров)

Функция JavaScript всегда возвращает некоторое значение. Для явного указания возвращаемого значения используется операция return. Ее операнд определяет возвращаемое функцией значение.

Пример вычисления факториала с использованием вызова функции.

В нашем сценарии пользователь через диалоговое окно, отображаемое методом prompt() объекта window, передает целое число, факториал которого следует вычислить. Осуществляется проверка введенного числа и вызывается рекурсивная функция factorial(). Полный текст сценария приводится ниже:

<script>

function factorial(n) {

if ((n == 0) || (n == 1))

return 1

else

return n * factorial(n-1)

}

x = window.prompt("Введите целое число","")

if (x = Number(x)){

alert(factorial(x))

}

else

alert("Следует ввести целое число!")

</script>

27. Объектное программирование на Java Script.

Javascript является объектно-ориентированным языком. Объектный подход в нём основан на прототипах. В отличие от других объектно-ориентированных языков, в js существует только одно понятие-объект, являющийся основой реализации объектно-ориентированного подхода в нём. Объект в javascript представляет собой обычный ассоциативный массив или, иначе говоря, "хэш". Он хранит любые соответствия "ключ => значение" и имеет несколько стандартных методов.

var o = new Object(), var o = {} Эквивалентные записи

Метод объекта в javascript - это просто функция, которая добавлена в ассоциативный массив. Методы отличаются от обычных функций тем, что могут ссылаться на объект, которому принадлежат, с помощью ключевого слова this.

function f() {var prop=this.Property_0;}Получение значения свойства.

При создании объекта, наследование реализуется через неявную (внутреннюю) ссылку одного объекта на другой, который называется его прототипом и в  спецификации обозначается[[prototype]]. Это свойство обычно скрыто от программиста. Также существует свойство с похожим названием prototype (без квадратных скобок) - оно вспомогательное и указывает, откуда брать прототип при создании объекта. Ссылка на прототип создается оператором new во время создания объекта. Прототип работает как резервное хранилище свойств. Если свойства нет у объекта - оно ищется в его прототипе. Получается наследование.

Когда вы ставите функции Animal свойство Animal.prototype = XXX - вы этим декларируете: "все новые объекты класса Animal будут иметь прототип XXX".

Свойства объекта. Псевдополя (параметры объекта, не все, а только необходимые в программе задающие его состояние), доступные для чтения и/или записи. Есть два синтаксиса добавления свойств в объект. Первый - точка, второй - квадратные скобки:

o.test = 5, o["test"] = 5 эквивалентные записи

Что нужно знать для ответа на вопрос:

ООП - объектно-ориентированное программирование. парадигма программирования, в которой основными концепциями являются понятия объектов и классов (либо, в менее известном варианте языков с прототипированием, — прототипов).

Класс является описываемой на языке терминологии (пространства имён) исходного кода моделью ещё не существующей сущности, т. е. объекта.

Объект — сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса (например, после запуска результатов компиляции (и связывания) исходного кода на выполнение).

Прототип — это объект-образец, по образу и подобию которого создаются другие объекты.

Абстрагирование – это способ выделить набор значимых характеристик объекта, исключая из рассмотрения незначимые. Соответственно, абстракция – это набор всех таких характеристик.

Инкапсуляция – это свойство системы, позволяющее объединить данные и методы, работающие с ними, в классе и скрыть детали реализации от пользователя.

Наследование – это свойство системы, позволяющее описать новый класс на основе уже существующего с частично или полностью заимствующейся функциональностью. Класс, от которого производится наследование, называется базовым, родительским или суперклассом. Новый класс – потомком, наследником или производным классом.

Полиморфизм – это свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта.

28. Организация поиска и извлечения, данных средствами Java Script. Использование регулярных выражений.

Регулярное выражение представляет собой строку символов, содержащую определённые синтаксические конструкции (метасимволы), которая может интерпретироваться различными программными средствами в качестве шаблона при выполнении операции обработки текста (например, поиск фрагментов текста или их замена) в javascript поддержка регулярных выражений осуществляется встроенными средствами.

Регулярное выражение состоит из шаблона и флагов. Шаблон является основой регулярного выражения, определяющий критерий поиска, а флаги задают параметры сопоставления шаблона. Задача создания регулярного выражения сводится к написанию шаблона.

Шаблон регулярных выражений состоит из последовательностей литеральных и специальных символов (метасимволов).

При поиске на основе регулярных выражений последовательность литеральных символов сопоставляются идентичным последовательностям в строке поиска (прямые совпадения), такие шаблоны называются простыми. Пример: /code/ совпадение произойдет в строках “I am coder”

Метасимволы позволяют вводить в шаблон конструкции, сопоставляющиеся с множеством возможных последовательностей символов. Пример /a\d+b/ в строке “aaa a4564b cc” сопоставится с подстрокой a4564b. В данном шаблоне a вначале и b в конце являются литеральными символами, а \d и + специальными. Последовательность \d соответствует любому одиночному цифровому символу, а + что этих символов может быть больше 1.

Так же существую флаги-задающие параметры поиска на основе шаблона. Возможны 3 флага. g-глобальный поиск (прерывается при первом удачном сопоставлении), i- поиск без учёта регистра, m-многострочный поиск.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]