Лабораторная работа 1 Основные положения
Скачать 368.4 Kb.
|
Количество заданных слов в текстеЛабораторная работа №12 Массивы Тип Array введен в JavaScript для возможности манипулирования самыми разными объектами, которые может отображать Navigator. Это - список всех гипертекстовых ссылок данной страницы, список всех картинок на данной странице, список всех элементов формы и т.п. Пользователь может создать и свой собственный массив, используя, конструктор Array(). Делается это следующим образом: new_array = new Array() new_array5 = new Array(5) colors = new Array("red", "white", "blue") Размерность массива может изменяться. Можно сначала определить массив, а потом присвоить одному из его элементов значение. Как только это произойдет, изменится и размерность массива: colors = new Array() colors[5] = "red". В данном случае массив будет состоять из 6 элементов, так как первым элементом массива считается элемент с индексом 0. Для массивов определены четыре метода: join, reverse, sort, concat. Join объединяет элементы массива в строку символов, в качестве аргумента в этом методе задается разделитель: colors = new Array("red", "white", "blue") string = acolors.join(" + ") В результате выполнения присваивания значения строке символов string мы получим следующую строку: string = "red + white + blue". Другой метод, reverse, изменяет порядок элементов массива на обратный, метод sort отсортировывает их в лексикографическом порядке, а метод concat объединяет два массива. У массивов есть два свойства: length и prototype. Length определяет число элементов массива. Если нужно выполнить некоторую рутинную операцию над всеми элементами массива, то можно воспользоваться циклом типа: color = new Array("red", "white", "blue") n = 0 while(n != colors.length) {... операторы тела цикла ...} Свойство prototype позволяет добавить свойства к объектам массива. Однако чаще всего в программах на JavaScript используются встроенные массивы, в основном графические образы (Images) и гипертекстовые ссылки (Links). В новой версии языка появился конструктор для этого типа объектов: new_image = new Image() new_image = new Image(width, height) Пример 1. Создание мультипликации с использованием массивов. Часто для создания мультипликации формируют массив графических объектов, которые потом прокручивают один за другим: img_array = new Array() img_array[0] = new Image(50,100) img_array[1] =new Image(50,100) img_array[99] = new Image(50,100) У объекта Image существует 10 свойств, из которых, пожалуй, самым важным является src. Так, для присваивания конкретных картинок элементам массива img_array следует воспользоваться следующей последовательностью команд: img_array[0].src = "image1.gif" img_array[1].src = "image2.gif" img_array[99].src = "image100.gif" В данном случае можно было воспользоваться и циклом для присвоения имен, так как они могут быть составлены из констант и значения индексной переменной. Расширяя пример с массивом Image, построим теперь документ, в котором будет встроена мультипликация, определенная нашим массивом: Листинг 1. Мультипликация. { k=Math.round( (i+j)/2+0.5)-1 res = res + i + " "+j+" "+k+" "+"v[" + k + "]=" + v[k] + " " + t + "<=" + v[k]+"\r\n" if (t <= v[k] ) j=k else i=k+l } res += "v[" + i + "]=" +v[i]+"\r\n" obj.resultl.value=res if (v[i] == t ) { return i} else return -1 } function test(obj) { obj.datal.yalue=v} //--> |