Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

}

Ключевое слово

return
позволяет функции вернуть значение любого допустимого типа. Например, приведенная ниже функция
MyFunction
возвращает
true
, если оба ее аргумента меньше 10:

function MyFunction(х,у) {

 if ((х<10) && (у<10)) return true

 else return false;

}

Встроенные объекты (классы)

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

Таблица П1.12. Некоторые встроенные объекты JScript

Объект Описание
Array
Создание и работа с массивами данных произвольного типа
Date
Работа с данными, содержащими дату или время
Enumerator
Работа с коллекциями данных произвольного типа
Math
Выполнение математических вычислений
String
Работа с текстовыми строками

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

new
и специальная функция — конструктор нужного объекта. Название конструктора всегда совпадает с названием соответствующего встроенного объекта. Приведем пример создания объектов
Date
и
Array
!

var d;

d = new Date;

var a;

a = new Array(10);

Отметим, что объекты string можно создавать, просто записывая в кавычках значение строки:

var s;

s = "Привет!";

Опишем объекты, приведенные в табл. П1.12, более подробно.

Объект Array

Новый объект встроенного класса

Array
можно создать с помощью оператора
new
следующими способами:

new Array
— создание массива нулевой длины;

new Array(N)
— создание массива длины
N
;

new Array(а0, a1, ..., aN)
— создание массива длины
N+1
c элементами
а0
,
a1
, ...,
aN
.

Например:

var A1, А2, A3;

A1 = new Array;

A2 = new Array(3);

A3 = new Array(0, "Строка", 2.5);

Нумерация элементов в массивах всегда начинается с нуля. После того как массив создан и проинициализирован, обращаться к его элементам можно с помощью обычного оператора индексации [], например:

A3[1] = А3[0] + A3[2];

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

length
объекта
Array
. Для того чтобы динамически изменить длину массива (уменьшить или увеличить), достаточно просто записать соответствующее значение в свойство length:

var А;

А = new Array(1,2,3,4,5); // Длина массива А равна 5

A.length = 3; // Теперь длина массива А равна 3

Некоторые наиболее часто используемые методы встроенного объекта

Array
описаны в табл. П1.13.

Таблица П1.13. Методы объекта

Array

Метод Описание
a1.concat(а2)
Возвращает новый массив, являющийся результатом объединения (склеивания) двух массивов:
a1
(его элементы идут первыми) и
а2
(его элементы идут после элементов массива
a1
)
join(separator)
Возвращает строку, содержащую все идущие друг за другом элементы массива, разделенные символом, указанным в параметре
separator
reverse
Располагает элементы массива в обратном порядке (первый меняется местами с последним, второй — с предпоследним и т.д.). Новый массив при этом не создается
slice(start, [end])
Возвращает часть массива, начиная с элемента с индексом
start
, заканчивая элементом с индексом
end
. Если в качестве
end
указано отрицательное число, то оно задает смещение от конца массива. Если параметр
end
не указан, то берутся все элементы массива, начиная с элемента с индексом
start
sort([sortfunction])
Возвращает массив с отсортированными элементами. Параметр
sortfunction
определяет имя функции, используемой для сортировки; если этот параметр опущен, то сортировка производится в порядке увеличения ASCII-кодов элементов массива

Пример использования методов объекта Array приведен в листинге П1.4.

Листинг П1.4. Пример использования методов объекта
Array

var A1, А2, A3;

A1 = new Array(2);

A2 = new Array(2,3,4,5);

A1[0] = 0;

A1[1] = 1;

A3 = A2.concat(A1); // A3=(2,3,4,5,0,1)

A3.sort; // A3=(0,1,2,3,4,5)

Объект Date

Для создания нового объекта встроенного класса

Date
используется один из трех конструкторов.

Конструктор первого вида позволяет создать объект, в котором хранится информация о текущих дате и времени:

var d;

d = new Date;

Здесь время задается по Гринвичу, т.е. с использованием времени (UCT — Universal Coordinated Time).

Конструктор второго вида имеет единственный параметр:

Поделиться:
Популярные книги

Товарищ "Чума" 4

lanpirot
4. Товарищ "Чума"
Фантастика:
городское фэнтези
альтернативная история
5.00
рейтинг книги
Товарищ Чума 4

Изгой Проклятого Клана. Том 2

Пламенев Владимир
2. Изгой
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Изгой Проклятого Клана. Том 2

Пламенев. Книга 3-7

Карелин Сергей Витальевич
Пламенев
Фантастика:
аниме
уся
фэнтези
сянься
5.00
рейтинг книги
Пламенев. Книга 3-7

Я царь. Книга XXVIII

Дрейк Сириус
28. Дорогой барон!
Фантастика:
боевая фантастика
аниме
попаданцы
5.00
рейтинг книги
Я царь. Книга XXVIII

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Наследие Маозари 6

Панежин Евгений
6. Наследие Маозари
Фантастика:
попаданцы
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Наследие Маозари 6

Сирийский рубеж

Дорин Михаил
5. Рубеж
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Сирийский рубеж

Я снова царь. Книга XXXIII

Дрейк Сириус
33. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я снова царь. Книга XXXIII

И.Бабель. Воспоминания современников

Паустовский Константин Георгиевич
Документальная литература:
биографии и мемуары
5.00
рейтинг книги
И.Бабель. Воспоминания современников

Сфирот

Прокофьев Роман Юрьевич
8. Стеллар
Фантастика:
боевая фантастика
рпг
6.92
рейтинг книги
Сфирот

Наследие Маозари 5

Панежин Евгений
5. Наследие Маозари
Фантастика:
фэнтези
юмористическое фэнтези
5.00
рейтинг книги
Наследие Маозари 5

Кодекс Охотника. Книга VIII

Винокуров Юрий
8. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга VIII

Путь разума. Том 12

Морфиус
12. Путь Разума
Фантастика:
рпг
уся
фэнтези
сянься
5.00
рейтинг книги
Путь разума. Том 12

Изгой Проклятого Клана. Том 6

Пламенев Владимир
6. Изгой
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Изгой Проклятого Клана. Том 6