Необязательная переменная в функции vbscript. Процедуры и функции VBScript. Очередность применения операторов

Информационная поддержка - процесс информационного обеспечения, ориентированный на пользователей информации.

Информационная поддержка используется при подготовке и реализации управленческих решений.

Для того чтобы организовать любое мероприятие, необходима маленькая, но очень важная деталь - повод . Исходя именно из этой детали, складывается сценарий любого мероприятия.

День рождения компании, юбилей руководителя, новогодняя вечеринка, деловой конгресс, все эти события объединяет одно - наличие повода, который в свою очередь является причиной для организации мероприятия.

Далеко не каждая event компания занимается информационной поддержкой мероприятий, и это понятно, так как для осуществления данной услуги необходимо четко понимать информационный повод конкретного события. Именно тот повод, который будет интересен, прежде всего, средствам массовой информации.

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

Актуальность информационного повода определяет грамотно написанный пресс-релиз . Профессиональный журналист или PR-щик четко знает, в каком ключе нужно подать информацию, чтобы привлечь максимальный интерес со стороны СМИ, именно от него зависит насколько будет интересно то или иное события.

Привлечение информационных спонсоров также является одним из основных моментов в организации информационной поддержки.

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

Специальные мероприятия призваны решать следующие коммуникационные, информационные и имиджевые задачи:

· обеспечение постоянного присутствия компании в информационном поле

· привлечение внимания журналистов и целевой аудитории к компании (ее продукции) или персоне

· создание, поддержание и развитие положительного имиджа компании или ее продукта

· взаимодействие с целевыми группами (в том числе поддержание внутрикорпоративных отношений)

· получение обратной связи, что позволяет провести анализ эффективности деятельности и стратегии

· демонстрация уровня развития компании, масштабов ее деятельности

· создание дополнительного источника информации о компании (у компании появляется важное и вполне контролируемое средство распространения информации)

Информационная поддержка мероприятия. Безусловно, ваша аудитория должна узнавать о событии заранее. В зависимости от формата и масштабности мероприятия и характеристик аудитории для мероприятий местного значения достаточным является период от месяца до двух недель. Чем более масштабным является ваше мероприятие, чем больших временных и финансовых затрат требует участие в нем, тем раньше должно начаться оповещение.

Способы оповещения зависят от формата мероприятия и предполагаемой аудитории. Это может быть директ-маркетинг - если речь идет о мероприятиях корпоративного формата и круг приглашаемых лиц известен заранее и ограничен, либо реклама в СМИ, если мероприятие носит открытый и массовый характер. Для массовых мероприятий эффективными будут наружная реклама и лефлетинг (раздача информационных листовок). В случае с аудиторией моложе 35 лет уместно использовать Интернет.

В любом случае при подборе арсенала информационных средств надо учитывать не только целевую аудиторию события, но и характер самого мероприятия, уместность информации о нем в рамках того или иного информационного ресурса.

Вторая волна информации о вашем мероприятии должна быть запущена после его проведения. Это так называемые «пост-выходы» информации в СМИ и Интернете. В случае мелких мероприятий и мероприятий, рассчитанных на ограниченный круг людей, без этого можно обойтись, но не стоит забывать о том, что любое упоминание мероприятия в СМИ в формате новостей - повышает статус события, придает ему значимость, как в глазах участников, так и в глазах остальной публики. К тому же, это лишний способ напомнить потребителям о вашей марке и ее позиционировании. Поэтому, если есть возможность раздуть мероприятие в некий информационный повод, не стоит от него отказываться.

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

В любом случае, планируя специальное мероприятие, задумайтесь: а нельзя ли раздуть из него достаточно интересный информационный повод? Если ваше мероприятие носит социальнозначимый характер, возможно СМИ пойдут на то, чтобы бесплатно опубликовать о нем информационный материал. Если же мероприятие чисто коммерческое - возможно стоит дать информацию на платной основе. Хорошим каналом бесплатной коммуникации могут быть различные новостные ленты на интернет-порталах - достаточно будет выслать пресс-релиз и фотографии с мероприятия. Впрочем, отдельные издания тоже могут опубликовать подобные пресс-релизы в формате новостей. Чем больше ваше мероприятие будет обсуждаться и озвучиваться после его проведения - тем лучше, тем больше эмоций свяжется с вашей маркой, причем не только у людей, которые побывали на мероприятии, но и у остальной публики.

Главное здесь, также как и при планировании остальных элементов event-marketing, помнить об уместности и целесообразности того или иного сообщения в том или ином контексте или формате.

Так же необходимо помнить о медиапланировании.

Media Planning – комплекс процедур по анализу целевой аудитории, выбору наиболее оптимальных (с точки зрения эффективности и стоимости программы размещения рекламного материала) рекламных носителей и рекламных инструментов, доступных на этих носителях, формированию

схемы размещения, оценке ее медиаэффектов, оценке результатов рекламной кампании.


©2015-2019 сайт
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-02

синтаксический программирование оператор скрипт

В VBScript предусмотрено два типа процедур: процедуры (subroutines) - ключевое слово Sub, и функции (functions) - обозначаются ключевым словом Function. Единственное отличие - функции возвращают какое-либо значение. В обоих случаях процедуры - это блок программного кода. Определение процедуры или функции должно заканчиваться ключевыми словами End Sub или End Function Вызов процедуры или функции: Call имя_процедуры, слово Call можно пропустить. Параметры могут передаваться процедуре по ссылке или по значению. По ссылке - значение исходной переменной меняется, по значению - создается копия, а значение исходной переменной не меняется. По умолчанию в VBScript параметр передается по ссылке (ByRef). Если нужно передать по значению, можно использовать ключевое слово ByVal: Function имя_функции(ByVal имя_переменной)

Встроенные функции VBScript
  • 1. Функции преобразования и проверки типов данных VBScript (C-convert, I-Is(type)):
    • * CBool() - преобразует переменную к типу Boolean;
    • * CByte() - преобразует переменную к типу Byte;
    • * CCur() - преобразует переменную к типу Currency;
    • * CDate() - преобразует переменную к типу Date;
    • * CDbl() - преобразует переменную к типу Double;
    • * CInt() - преобразует переменную к типу Integer;
    • * CLng() - преобразует переменную к типу Long;
    • * CSng() - преобразует переменную к типу Single;
    • * CStr() - преобразует переменную к типу String;
    • * TypeName() - которая возвращает имя используемого типа данных;
    • * IsNumeric();
    • * IsDate();
    • * IsArray();
    • * IsEmpty();
    • * IsError();
    • * IsMissing();
    • * IsNull();
    • * IsObject();
    • * Hex() - преобразовывают десятичные данные в строковое представление шестнадцатеричных значений;
    • * Oct() - преобразовывают десятичные данные в строковое представление восьмеричных значений.
  • 2. Строковые функции (string functions) в VBScript:
    • * Asc() - возвращает числовой код символа;
    • * AscB() - возвращает первый байт числового кода символа;
    • * AscW() - возвращает код для символа в формате unicode;
    • * Chr(), ChrB(),ChrW() - возвращает символ по коду;
    • * InStr() - позволяет найти в теле строковой переменной последовательность символов и вернуть ее позицию. Поиск ведется с начала строки. Если ничего не найдено - возвращается 0;
    • * InStrRev() - выполняет то же самое что и InStr(), но поиск ведется с конца строки;
    • * Left() - позволяют взять из строковой последовательности указанное количество символов, считая слева;
    • * Right() - позволяют взять из строковой последовательности указанное количество символов, считая справа;
    • * Mid() - позволяют взять из строковой последовательности указанное количество символов, считая от указанной позиции;
    • * Len() - возвращает длину строки;
    • * LCase() - переводит строку в нижний регистр;
    • * UCase() - переводит строку в верхний регистр;
    • * LTrim() - убирает пробелы в начале строки;
    • * RTrim() - убирает пробелы в конце строки;
    • * Trim() - убирает пробелы в начале и конце строки;
    • * Replace() - производит замену подстроки на другую;
    • * Space() - возвращает строку указанной длины из пробелов;
    • * String() - возвращает строку указанной длинны из символов;
    • * StrComp() - сравнивает две строки;
    • * StrConv() - преобразует строку;
    • * StrReverse() - "переворачивает" последовательность символов строки в обратный порядок;
    • * Tab(). - вывод на экран указанного кол-ва символов табуляции (аналогично встроенной константе vbTab);
  • 3. Числовые функции (numeric functions) в VBScript:
    • * Abs() - возвращает модуль числа;
    • * Int() - возвращает ближайшее целое;
    • * Fix() - отбрасывает дробную часть;
    • * Round() - округляет до указанного количества знаков после запятой;
    • * Rnd() и команда Randomize - используются для получения случайных значений. Синтаксис: случайное_число=Int(минимум + (Rnd()*максимум)). Перед использованием Rnd() необходимо инициализировать генератор случайных чисел командой Randomize;
    • * Sgn() - возвращает информацию о знаке числа. Возвращает -1 для отрицательного, +1 для положительного и 0 для 0.
  • 4. Функции даты/времени (datetime functions) в VBScript:
    • * Date() - возвращает системную дату;
    • * Time() - возвращает системное время;
    • * Now() - возвращает дату и время. Установить их можно одноименными операторами, например: Date = #6/10/2009# (#Месяц/день/год#);
    • * DateAdd() - Добавляет к дате указанное число лет, месяцев и т.п.;
    • * DateDiff() - возвращает разницу между датами в единицах от лет до секунд;
    • * DatePart() - возвращает указанную часть даты (год, месяц, день недели и т.п.);
    • * DateSerial() - создает значение даты на основе передаваемых символьных значений. То же самое делает функция DateValue(), но при другом формате принимаемых значений. Аналогичным образом (для времени) работают TimeSerial() и TimeValue();
    • * Day() - возвращает день (аналогично соотв. DatePart());
    • * Year() - возвращает год;
    • * Month() - возвращает месяц;
    • * Weekday() - возвращает день недели;
    • * Hour() - возвращает час;
    • * Minute() - возвращает минуты;
    • * Second() - возвращает секунды;
    • * MonthName() - возвращает название месяца;
    • * Timer() - возвращает количество секунд, прошедших после полуночи.
  • 5. Функции форматирования (formatting functions) в VBScript:
    • * Format() - синтаксис Format(выражение, "формат"), например: Format(2.505, "#,##0.00"). Аналогично для остальных функций;
    • * FormatNumber();
    • * FormatCurrency();
    • * FormatDateTime();
  • 6. Функции для работы с массивами в VBScript:
    • * Array() - позволяет автоматически создать массив нужного размера и типа и сразу загрузить в него переданные значения;
    • * Filter() - позволяет на основе одного массива получить другой, отфильтровав в исходном массиве нужные нам элементы;
    • * LBound() - возвращают информацию о нижней границе массива (номер первого имеющегося в массиве значения);
    • * UBound() - возвращают информацию о верхней границе массива (номер последнего имеющегося в массиве значения)
    • * Join() - соединяет множество строк, составляющих массив, в одну строковую переменную. В качестве разделителя по умолчанию используется пробел, но можно указать и свой разделитель;
    • * Split() - функция, обратная Join().
  • 7. Функции для взаимодействия с пользователем в VBScript:
    • * MsgBox(), константы +
    • * InputBox().

Пример использования MsgBox

Response = MsgBox("Нажмите кнопку", vbYesNo)

If Response = vbYes Then

" если нажали кнопу Yes

" если нажали кнопу No

Так же для взаимодействия с пользователем используются метод WshShell.Popup(), команда Beep.


Процедуры

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

Виды процедур


В VBScript существует два вида процедур: подпрограмма (Sub) и функция (Function). Подпрограмма (Sub) - это последовательность VBScript-операторов, обрамляемая операторами Sub и End Sub. Подпрограммы могут принимать параметры (константы, переменные или выражения, которые передаются при вызове процедуры), но не возвращают значений. Если подпрограмма не содержит параметров, то ее оператор должен включать пустой набор круглых скобок. Следующая подпрограмма использует две функции языка VBScript - InputBox и MsgBox. Она запрашивает у пользователя ввод температуры в градусах Фаренгейта, переводит ее в градусы Цельсия и отображает результат. Вычисление температуры происходит в функции Celsius.

Функция (Function) - это последовательность операторов VBScript, обрамляемая операторами Function и End Function. Она похожа на подпрограмму, но отличается от последней тем, что может возвращать некоторое значение. Функция может принимать параметры (константы, переменные или выражения, передаваемые при вызове). Если она не содержит параметров, то оператор Function должен включать пустой набор круглых скобок. Возвращаемый тип у Function - Variant.

В следующем примере функция Celsius переводит градусы Фаренгейта в градусы Цельсия. Когда вызывается функция из подпрограммы ConvertTemp, переменная, содержащая параметр-значение, передается в функцию. Результат вычисления возвращается в вызывающую процедуру и отображается в MsgBox.

Перед использованием процедур в своей программе вы должны их объявить. Их нужно всегда размещать в самом начале раздела вашей HTML-странички. Весь последующий текст должен также находиться в разделе . Операторы Function и Sub, подобно другим элементам языка VBScript, располагаются между парой тегов для правильного их распознавания браузером. Кроме того, теги комментария () окружают текст программы внутри тега , гарантируя, что сценарий не будет отображаться в браузерах, которые не поддерживают VBScript.

Любые данные передаются в ваши процедуры в виде параметров. При создании подпрограммы (или функции) после ее имени должны быть круглые скобки. Любые параметры внутри них отделяются запятыми. В следующем примере параметр fDegrees передает значения в функцию Celsius для преобразования:

Используйте функции вместо подпрограмм, если требуется возвратить некоторое значение.

Использование подпрограмм и функций


Для применения функций в вашей программе необходимо поставить ее название справа от переменной или выражения, в которое будет возвращаться результат выполнения функции, например:

Чтобы вызвать одну процедуру из другой, необходимо написать имя первой со значениями требуемых параметров, каждый из которых должен отделяться от предыдущего запятой. Оператор Call не требуется. Но если вы все-таки используете его, то нужно заключить любые параметры в круглые скобки. Следующий пример показывает две возможности вызова процедуры MyProc. Один использует оператор Call, другой - нет. Оба выполняют одно и то же.

Обратите внимание, что круглые скобки опускаются при вызове подпрограммы, если оператор Call не применяется.

Хотя в VBScript определен только один тип

, внутри этого типа имеется разделение на подтипы , описание которых приведено в табл. П2.1. Для преобразования переменных к определенному подтипу нужно использовать соответствующую функцию преобразования; такие функции также представлены в табл. П2.1.

Таблица П2.1. Подтипы данных

Подтип Функция преобразования Описание
- Автоматически присваивается новым переменным, когда для них еще не определено явное значение
- Указывает на то, что переменная не содержит допустимых значений
Используется для работы с логическими переменными, принимающим два допустимых значения: или
Содержит целые числа в диапазоне от 0 до 255
Содержит целые числа в диапазоне от –32768 до 32768
Специальный числовой формат для денежных величин
Содержит целые числа в диапазоне от -2147483648 до 2147483647
Тип чисел с плавающей точкой одинарной точности
Тип чисел с плавающей точкой двойной точности
Содержит числа, соответствующие датам и времени от 1 января 100 года до 31 декабря 9999 года
Символьный подтип данных. Текстовые строки в VBScript - это последовательность символов, заключенных в двойные кавычки
- Ссылка на объект
- Тип данных, предназначенный для хранения номеров ошибок

В переменную, которая была ранее объявлена с использованием ключевого слова

, можно записать ссылку на какой-либо объект. Делается это с помощью оператора , например: Set FSO=CreateObject("Scripting.FileSystemObject")

Здесь функция

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

Константы

Пользовательские константы в VBScript объявляются с помощью ключевого слова

, например: Const MyConst="Это моя константа"

Кроме этого, VBScript поддерживает много встроенных именованных констант (их не нужно дополнительно объявлять в сценарии), применение которых упрощает использование различных внутренних функций (например,

или ). Имена, значения и описания внутренних констант приведены в табл. П2.2–П2.9.

Таблица П2.2. Константы для обозначения цветов

Имя Значение Описание
&h00 Черный цвет
&hFF Красный цвет
&hFF00 Зеленый цвет
&hFFF Желтый цвет
&hFF0000 Синий цвет
&hFF00FF Фиолетовый цвет
&hFFFF00 Бирюзовый цвет
&hFFFFFF Белый цвет

Таблица П2.3. Константы для нумерации дней недели

Имя Значение Описание
1 Воскресенье
2 Понедельник
3 Вторник
4 Среда
5 Четверг
6 Пятница
7 Суббота

Таблица П2.4. Константы для определения первого дня в неделе и первой недели в году

Имя Значение Описание
0 Использовать для определения первого дня недели региональные настройки системы
1 Первой неделей в году считается та, в которой было 1 января
2 Первой неделей в году считается та, в которой было по крайней мере четыре дня нового года
3 Первой неделей в году считается первая полная неделя

Таблица П2.5. Константы для работы с датой и временем

Имя Значение Описание
0 Дата и время выводятся в формате, определяемом региональными настройками системы
1 Выводить дату, используя полный формат
2 Выводить дату, используя краткий формат
3 Выводить время, используя полный формат
4 Выводить время, используя краткий формат

Таблица П2.6. Константы для диалоговых окон

Имя Значение Описание
0 Выводится кнопка OK
1 Выводятся кнопки OK и Отмена (Cancel)
2 Выводятся кнопки Стоп (Abort), Повтор (Retry) и Пропустить (Ignore)
3 Выводятся кнопки Да (Yes), Нет (No) и Отмена (Cancel)
4 Выводятся кнопки Да (Yes) и Нет (No)
5 Выводятся кнопки Повтор (Retry) и Отмена (Cancel)
16 Выводится значок Stop Mark
32 Выводится значок Question Mark
48 Выводится значок Exclamation Mark
64 Выводится значок
0 По умолчанию в окне выбирается первая кнопка
256 По умолчанию в окне выбирается вторая кнопка
512 По умолчанию в окне выбирается третья кнопка
768 По умолчанию в окне выбирается четвертая кнопка
0 Диалоговое окно выводится в модальном режиме
4096 Диалоговое окно выводится в модальном режиме и располагается сверху всех запускаемых приложений

Таблица П2.7. Результаты нажатия кнопок в диалоговых окнах

Имя Значение Описание
1 Нажата кнопка OK
2 Нажата кнопка Отмена (Cancel)
3 Нажата кнопка Стоп (Abort)
4 Нажата кнопка Повтор (Retry)
5 Нажата кнопка Пропустить (Ignore)
6 Нажата кнопка Да (Yes)
7 Нажата кнопка Нет (No)

Таблица П2.8. Константы для обозначения подтипов данных

Имя Значение Описание
0 Переменная не инициализирована
1 Переменная не содержит корректных данных
2 Переменная имеет подтип
3 Переменная имеет подтип
4 Переменная имеет подтип
5 Переменная имеет подтип
6 Переменная имеет подтип
7 Переменная имеет подтип
8 Переменная имеет подтип
9 Переменная имеет подтип
10 Переменная имеет подтип
11 Переменная имеет подтип
12 Переменная имеет подтип (только для массивов переменных типа )
13 Объект доступа к данным
14 Переменная имеет подтип
17 Переменная имеет подтип
8192 Переменная является массивом

Таблица П2.9. Прочие константы

Имя Значение Описание
Chr(13) Возврат каретки
Chr(13) & Chr(10) Возврат каретки и перевод строки
Chr(12) Перевод страницы
Chr(10) Перевод строки
Chr(0) Символ с нулевым кодом
Нулевая строка Нулевая строка
Chr(9) Символ табуляции
Chr(11) Символ вертикальной табуляции
-2 Использовать значения по умолчанию из региональных настроек системы
-1 Логическое значение "истина"
0 Логическое значение "ложь"
-2147221504 Определяет минимальное значение для номеров ошибок, задаваемых пользователем

Массивы в VBScript могут быть двух видов: статические (фиксированной длины) и динамические (переменной длины). Объявляются массивы, как и обычные переменные, с помощью ключевого слова

.

Для объявления статического массива нужно после его названия указать в круглых скобках наибольшее значение, которое может принимать индекс элемента в этом массиве, например:

В языке VBScript (в отличие, например, от VBA) нумерация в массивах всегда начинается с нуля, поэтому объявленный выше массив

будет содержать 11 элементов, обращаться к которым нужно следующим образом:

Можно объявить двумерный массив, указав максимальные значения индексов для строк и столбцов соответственно, например:

Dim MyArr(5, 10) "Массив из 6 строк и одиннадцати столбцов

При объявлении динамического массива его размеры в круглых скобках не указываются:

Для использования динамического массива в сценарии применяется оператор

, который определяет конкретную длину массива, например:

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

MyArr(0)="Это первый элемент" MyArr(1)="Это второй элемент"

Отметим, что размеры динамического массива можно менять неоднократно (с помощью того же

). Для сохранения при этом содержимого массива следует в операторе использовать ключевое слово , например:

Операторы

В VBScript поддерживаются операторы нескольких типов, которые описаны ниже.

Арифметические операторы

Арифметические операторы языка VBScript представлены в табл. П2.10.


Таблица П2.10. Арифметические операторы

Оператор Описание
(унарный оператор) Изменение знака аргумента на противоположный
(бинарный оператор) Вычитание двух чисел
Сложение двух чисел
Умножение двух чисел
Деление двух чисел
Целочисленное деление двух чисел
Вычисление остатка от деления двух чисел
Оператор возведения в степень

Операторы отношения и логические операторы

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

или .

Таблица П2.11. Операторы отношения


Также внутри условных операторов могут применяться логические операторы (табл. П2.12).


Таблица П2.12. Логические операторы

Оператор Описание
Оператор отрицания. Возвращает , если операнд равен . В противном случае возвращает
Оператор отношения "ИЛИ". Возвращает , если один из операндов равен . В противном случае возвращает
Оператор отношения "ИСКЛЮЧАЮЩЕЕ ИЛИ". Возвращает , если один из операндов равен , а другой равен . В противном случае возвращает
Оператор отношения "И". Возвращает , если оба операнда равны . В противном случае возвращает

Условные операторы

В VBScript поддерживается условный оператор

. Общий вид этого оператора: If условие_1 Then выражение_3 ]

При выполнении оператора

оценивается логическое условие (условие_1 ), стоящее после ключевого слова . Если в результате оценки условия получилось значение , то выполняется и происходит выход из оператора. В противном случае начинают по очереди проверяться условия, стоящие после ключевых слов ; если одно из этих условий истинно, то выполняется соответствующее выражение, после чего управление передается следующему после End If оператору. Если ни одно из проверяемых условий не является истинным, выполняется выражение, стоящее после ключевого слова . Пример:

Другим оператором, позволяющим производить выбор из нескольких вариантов, является

. Синтаксис этого оператора: Select Case выражение Case значение_1 выражение_3 ]

Здесь сначала вычисляется значение , которое затем по очереди сравнивается со значениями, стоящими после ключевых слов

. В случае совпадения выполняются операторы в соответствующем блоке . Если же ни одно из имеющихся значений не совпадает со значением , то выполняются операторы, стоящие после слова Else. Пример использования оператора : Color = "Цвет непонятен"

Операторы циклов

В VBScript поддерживаются несколько типов циклов: цикл

, цикл , цикл , цикл . Рассмотрим каждый из них подробнее.

Цикл For…Next

В общем случае оператор цикла

записывается следующим образом: For counter=start То end

Параметр здесь является счетчиком цикла;

- начальное значение этого счетчика; - конечное значение; - шаг приращения счетчика. Если ключевое слово не указано, то шаг приращения берется равным единице. Выход из цикла происходит, когда значение счетчика становится больше, чем значение параметра . Выражение используется для безусловного выхода из цикла.

Пример использования цикла

приведен в листинге П2.1. Листинг П2.1. Пример использования цикла "Цикл выполнится 11 раз

Цикл For Each…Next

Оператор цикла

предназначен для перебора всех элементов массива или коллекции: For Each element In group

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

Замечание

Напомним, что в JScript для перебора всех элементов коллекции необходимо использовать вспомогательный объект

.

С помощью оператора

можно осуществить немедленный выход из цикла.

Пример использования цикла

приведен в листинге П2.2. Листинг П2.2. Пример использования цикла "Объявляем переменные Dim FSO, Folder, Files, File, s s = "Список файлов" & vbCrLf "Создаем объект FileSystemObject Set FSO = CreateObject("Scripting.FileSystemObject") " Создаем объект Folder для корневого каталога диска С: Set Folder = FSO.GetFolder("C:\") "Создаем коллекцию Files всех файлов в корневом каталоге диска С: "Перебираем все элементы коллекции Files "Выделяем имя файла для текущего элемента File коллекции "Выводим сформированную строку на экран

Цикл While…Wend

записывается в следующем виде:

Таким образом, в цикле

условие выполнения тела цикла проверяется перед началом очередной итерации. Если условие равно , то тело цикла выполняется, в противном случае цикл завершается.

Пример использования цикла

приведен в листинге П2.3. Листинг П2.3. Пример использования цикла theCount = 42 "Начальное значение счетчика цикла theMoments = "До взрыва осталось " & theCount & " сек!" theMoments = "Осталась секунда!" theCount = theCount - 1 "Уменьшаем значение счетчика

Цикл Do…Loop

Этот цикл может применяться в двух видах (с предусловием, которое проверяется до начала очередной итерации, и с пост-условием, которое проверяется после окончания итерации):

Do условие Loop условие

Если в цикле используется ключевое слово

, то итерации продолжаются до тех пор, пока равно ; если же применяется , то как только значением условия станет , произойдет выход из цикла.

Оператор

позволяет выйти из цикла до завершения его итераций.

Пример использования цикла

приведен в листинге П2.4. Листинг П2.4. Пример использования цикла Dim howFar "Верхний предел для счетчика цикла Dim sum(10) "Массив из 11 элементов, индексы от 0 до 10 "Цикл выполнится 11 раз

Прочие операторы

Рассмотрим еще несколько часто применяемых операторов (табл. П2.13).


Таблица П2.13. Прочие операторы

Обработка исключительных ситуаций

Режим обработки исключительных ситуаций в VBScript включается с помощью оператора

. Если после этого при исполнении какою-либо оператора в сценарии произойдет ошибка времени выполнения, то управление передастся к следующему оператору в тексте.

Для анализа ошибок используется специальный объект

, который содержит два свойства: - числовой код возникшей ошибки и - краткое описание этой ошибки.

В качестве примера приведем часть сценария, в которой происходит обработка исключительных ситуаций при подключении сетевого диска:

On Error Resume Next " Включаем обработку ошибок времени выполнения " Подключаем сетевой диск WshNetwork.MapNetworkDrive Drive, NetPath Mess="Ошибка при подключении диска " & Drive & " к " & NetPath &_ "Код ошибки: " & е.number & "Описание: " & е.description WshShell.Popup Mess, 0, "Подключение сетевого диска", vbCritical Mess = "Диск " & Drive & " успешно подключен к " & NetPath WshShell.Popup Mess, 0, "Подключение сетевого диска", vbInformation

Для отмены режима обработки исключительных ситуаций нужно выполнить оператор

.

Процедуры и функции

VBScript поддерживаются два вида подпрограмм: встроенные функции и функции или процедуры пользователя.

Математические функции

Имеющиеся в VBScript функции, предназначенные для математических вычислений, описаны в табл. П2.14.


Таблица П2.14. Математические функции

Функция Описание
Возвращает абсолютное значение числа
Возвращает арктангенс числа
Возвращает косинус числа
Экспоненциальная функция, возвращает число е, возведенное в степень
Возвращает целую часть числа
Возвращает натуральный логарифм числа
Возвращает случайное число от 0 до 1
Round(х[, nvmdecimal] ) Возвращает результат округления числа с точностью до знаков после запятой
Знаковая функция числа
Возвращает синус числа
Вычисляет квадратный корень из числа и возвращает полученное значение
Возвращает тангенс числа

Символьные функции

Наиболее часто используемые функции, с помощью которых можно производить различные операции над символьными строками, описаны в табл. П2.15.


Таблица П2.15. Символьные функции

Функция Описание
Возвращает ASCII-код первого символа в строке
Возвращает символ с ASCII-кодом
InStr( str1, str2[, compare] ) Возвращает индекс символа, с которого начинается первое вхождение подстроки в строку . Параметр задает номер символа, с которого следует начинать поиск. Если этот параметр не задан, то поиск производится с начала строки. Поиск производится слева направо. Параметр задает режим сравнения при обработке строк (0 - двоичное, сравнение, 1 - текстовое сравнение)
InStrRev(str1, str2[, start[, compare]] ) То же самое, что функция , но поиск производится справа налево, т.е. возвращается номер последнего символа, с которого начинается вхождение подстроки в строку
Возвращает строку, полученную в результате конкатенации подстрок, содержащихся в массиве . Параметр задает символ, разделяющий подстроки (по умолчанию таким символом является пробел)
Возвращает строку, в которой все алфавитные символы преобразованы к нижнему регистру
Возвращает символов с начала строки
Возвращает число символов в строке
LTrim(str ), RTrim(str ), Trim(str ) Удаляет из строки начальные, конечные или и те и другие пробелы соответственно
Mid(str, start[, len] ) Возвращает из строки подстроку, которая начинается с позиции и имеет длину . Если параметр не указан, то возвращаются все символы, начиная с позиции до конца строки
Replace(expr, find, replacewith[, start[, count[, compare]]] ) Возвращает строку, которая получается из строки путем замен входящих в нее подстрок на подстроки . Параметр определяет число подстрок, которые будут обработаны таким образом (по умолчанию производятся все возможные замены). Параметр
Возвращает символов с конца строки
Возвращает строку, состоящую из пробелов
Split(Expr[, delim[, count[, compare]]] ) Возвращает массив строк, полученных в результате разбиения строки на подстроки. Параметр задает символ, разделяющий подстроки (по умолчанию таким символом является пробел). Параметр определяет число подстрок, которые будут обработаны таким образом (по умолчанию в массив записываются все подстроки). Параметр задает режим сравнения при работе со строками (0 - двоичное сравнение, 1 - текстовое сравнение)
StrComp(str1, str2[, compare] ) Возвращает число - результат сравнения строк и . Если , то возвращается -1; если , то возвращается 0; если , то возвращается 1. Параметр задает режим сравнения при работе со строками (0 - двоичное сравнение, 1 - текстовое сравнение)
Возвращает строку, состоящую из символов
Возвращает строку, в которой все алфавитные символы преобразованы к верхнему регистру

Для работы с датой и временем в VBScript имеется большой набор функций, основные из которых приведены в табл. П2.16.


Таблица П2.16. Функции для работы с датой и временем

Функция Описание
Возвращает текущую системную дату
DateAdd(interval, number, date ) Возвращает дату, отстоящую от даты на интервалов, заданных параметром , который может принимать следующие значения: "уууу" - год, "q" - квартал, "m" - месяц, "у" - день года, "d" - день, "w" - неделя, "ww" - неделя года, "h"- час, "m" - минута, "s" - секунда
DateDiff(interval, date1, date2[, firstdayofweek [, firstweekofyear]] ) Возвращает разницу в интервалах (возможные значения этого параметра те же, что и в функции ) между датами и . Параметр - это константа, показывающая, какой из дней недели следует считать первым (см. табл. П2.3, П2.4). Параметр - это константа, показывающая, какую неделю следует считать первой в году (см. табл. П2.4)
DatePart(interval, date [, firstdayofweek [, firstweekofyear]] ) Возвращает ту часть даты , которая соответствует параметру . Значения параметров и здесь те же, что и в функции
DateSerial(year, month, day ) Возвращает переменную подтипа , которая соответствует указанным году (параметр ), месяцу (параметр ) и дню (параметр )
Возвращает переменную подтипа , которая соответствует дате, заданной символьным параметром
Выделяет номер часа из даты или момента времени, заданных параметром . Возвращает целое число от 0 до 23
Возвращает , если параметр задает корректную дату, и в противном случае
Выделяет количество минут из даты или момента времени, заданных параметром . Возвращает целое число от 0 до 59
Выделяет номер месяца из даты, заданной параметром . Возвращает целое число от 1 до 12
MonthName(month[, abbr] ) Возвращает наименование для месяца с номером . Если логический параметр равен , то наименование месяца представляется в виде аббревиатуры, в противном случае - в полном виде
Возвращает текущие дату и время в виде, соответствующем региональным настройкам Windows
Возвращает текущее системное время
Возвращает количество секунд, прошедших с полуночи
TimeSerial(hour, minute, second ) Возвращает переменную подтипа , которая соответствует указанным часу (параметр ), минуте (параметр ) и секунде (параметр )
Возвращает переменную подтипа , которая соответствует времени, заданному символьным параметром
Weekday(date[, firstdayofweek] ) Возвращает целое число - день недели для даты, заданной параметром . Параметр - это константа, показывающая, какой из дней недели следует считать первым
WeekdayName(weekday[, abbr[, firstdayofweek]] ) Возвращает наименование для дня недели с порядковым номером . Если логический параметр равен , то наименование дня недели представляется в виде аббревиатуры, в противном случае - в полном виде. Значение параметра здесь то же, что и в функции
Выделяет год из даты, заданной параметром , и возвращает это целое число


Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: