Объект Enumerator

С помощью объекта Enumerator можно получить доступ к любому элементу коллекции (в VBScript для этого служит цикл For…Each). Коллекцией в языке JScript называется множество элементов, которое отличается от мас­сива тем, что к элементам коллекции нельзя получить прямой доступ с по­мощью индексов — можно только перемешать указатель текущего элемента на самый первый или следующий относительно текущего элемент.

Для создания нового объекта встроенного класса Enumerator используется конструктор следующего вида:

var е;
е = new Enumerator(collection);

Здесь параметр collection указывает на коллекцию, для доступа к элемен­там которой и создается объект класса Enumerator. Сами коллекции обычно являются свойствами других объектов.

Методы объекта Enumerator (свойств у этого объекта нет)

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

item() — Возвращает значение текущего элемента коллекции. Если коллек­ция пуста или текущий элемент не определен, возвращается неоп­ределенное значение undefined

moveFirst() — Перемещает указатель на первый элемент коллекции. Если в кол­лекции нет элементов, текущий элемент принимает неопределен­ное значение undefined

moveNext() — Перемещает указатель на следующий элемент коллекции. Если перед применением этого метода указатель находился на послед­нем элементе коллекции, либо коллекция пуста, текущий элемент принимает неопределенное значение undefined

Пример использования объекта Enumerator

var FSO, Folder, Files, s;  //Объявляем переменные
//Создаем объект FileSystemObject
FSO=WScript.CreateObject("Scripting.FileSystemObject");
//Создаем объект Folder для корневого каталога диска С:
Folder=FSO.GetFolder("C:\\");
//Создаем коллекцию файлов для диска С
Files=new Enumerator(Folder.Files);
for (; !Files.atEnd(); Files.moveNext())  //Цикл по всем файлам
     s+=Files.item().Name+"\n";    //Добавляем строку с именем файла
WScript.Echo(s);     //Выводим полученные строки на экран

Оцените статью
Технологии программирования и ведение блога
Добавить комментарий