|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.5 МассивыМассивы в VBScript, применение массивов, обявление массивов фиксированного размера и динамических, очистка массивов Массивы используются для хранения в памяти множества значений. В WSH массивы используются очень часто - массив параметров, переданных скрипту, массив сетевых или логических дисков на компьютере и т.п. Вместо того, чтобы объявлять множество похожих друг на друга переменных, часто гораздо удобнее воспользоваться массивом. Объявление массива производится очень просто: Dim MyArray(2) Такой массив может хранить три элемента. 2 - upper bound. Количество элементов, которое может хранить массив, - от 0 до upper bound включительно. Как присвоить значение отдельному элементу массива (в нашем случае - первому): MyArray(0) = 100 Как получить значение из массива: WScript.Echo MyArray(1) Массивы вполне могут быть многомерными: Dim MyArray(4, 9) В каждой строке многомерного массива удобно хранить данные, относящиеся к одному объекту (например имя сотрудника, уникальный номер, номер телефона). В VBScript в одном массиве может быть до 60 измерений. В массивах VBScript можно хранить объекты разных типов данных. Часто необходимы массивы динамические - те, размер которых можно изменять в ходе выполнения. Динамический массив объявляется следующим образом: Dim MyArray() ‘ - объявляем массив без верхней границы, эту строку можно пропустить ReDim MyArray(4) ‘ - изменяем размер массива Команда ReDim не только изменяет размер массива, но и удаляет из него все старые значения. Чтобы старые значения сохранить, используется ключевое слово Preserve: ReDim Preserve MyArray(7) Однако если новый размер массива меньше, чем кол-во помещенных в него элементов, слово Preserve не поможет - часть данных все равно будет потеряна. Массивы можно создавать и заполнять одновременно: Dim MyArray MyArray = Array(100, 200, 300, 400, 500) Указывать размер массива необязательно - он будет автоматически настроен в соответствии с кол-вом передаваемых элементов. Очистить массив можно командой Erase: Erase MyArray Массив фиксированной длины просто очищается, динамический массив разинициализируется - его придется инициализировать (определять размер) заново. В динамических массивах часто не известно, сколько элементов в массиве. Для определения кол-ва элементов используется функция UBound (если массив одномерный, то измерение передавать не надо): UBound (имяМассива [, измерение])
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||