Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Сценарии JavaScript в активных страницах Web

© Александр Фролов, Григорий Фролов
Том 34, М.: Диалог-МИФИ, 1998, 288 стр.

[Назад] [Содеожание] [Дальше]

Массивы в JavaScript

Язык сценариев JavaScript допускает работу с массивами встроенных объектов, объектов браузера и объектов, созданных программистом. К сожалению, нет единого способа создания массивов, пригодного для применения в разных версиях браузеров. Мы расскажем вам о двух способах, первый из которых необходим для версий браузеров Netscape Navigator, более ранних чем 3.0, а второй используется новыми браузерами фирм Netscape и Microsoft.

Первый способ предполагает создание собственного класса. Это можно сделать, например, так:


function createArray(nLength)
{
  this.length = nLength;

  for(var i = 1; i <= nLength; i++)
  {
    this[i] = 0; 
  }
  return this;
}

Здесь в классе определено свойство с именем length, которое хранит размер массива, передаваемый конструктору класса через параметр nLength.

Конструктор выполняет инициализацию массива, записывая в его ячейки нулевые значения. Таким образом мы создаем массив для хранения чисел. После инициализации конструктор возвращает ссылку на созданный объект, то есть на наш массив.

Как пользоваться классом createArray?

Прежде всего вы должны объявить переменную для хранения массива, а затем создать объект класса createArray с помощью ключевого слова new:


var myArray;
myArray = new createArray(256);

После этого можно обращаться к ячейкам массива:


myArray[0] = 255;
myArray[1] = 254;
myArray[255] = 0;

Нумерация ячеек начинается с нуля.

Второй способ создания массивов проще.

При его использовании вы можете создать массив как объект встроенного класса Array:


var myArray;
myArray = new Array(256);
  . . .
myArray[0] = 255;
myArray[1] = 254;
myArray[255] = 0;

Так как класс Array - встроенный, вам не нужно определять его самостоятельно.

[Назад] [Содеожание] [Дальше]