Пакет | Верхний уровень |
Класс | public dynamic class Vector |
Наследование | Vector Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Как и в случае с объектом Array, можно использовать оператор доступа к массиву ([]
), чтобы задать или определить значение элемента Vector. Несколько методов вектора также имеют механизмы присвоения и определения значений переменных. В их число среди прочих входят методы push()
, pop()
, shift()
, unshift()
. Свойства и методы объекта Vector подобны (и в большинстве случаев идентичны) свойствам и методам объекта Array. В большинстве случаев, когда используется объект Array, все элементы которого относятся к одному и тому же типу данных, предпочтительным является экземпляр Vector. Однако экземпляры Vector являются плотными массивами, то есть они должны иметь значение (или null
) в каждом индексе. У экземпляров Array нет такого ограничения.
Базовый тип вектора указывается с помощью постфиксного синтаксиса параметров. Синтаксис параметра типа представляет собой последовательность, состоящую из точки (.
), открывающей угловой скобки (<
), имени класса и закрывающей угловой скобки (>
), как показано в примере:
В первой строке примера переменная v
объявлена как экземпляр Vector.<String>. Другими словами, он представляет вектор (массив), который может содержать лишь экземпляры String и из которого можно извлечь только них. Вторая строка создает экземпляр того же типа вектора (вектор, все элементы которого являются объектами String) и присваивает его v
.
var v:Vector.<String>; v = new Vector.<String>();
Переменная, объявленная вместе с типом данных Vector. <T>, может хранить экземпляр Vector только в том случае, если он создан с идентичным базовым типом T
. Например, вектор, созданный путем вызова метода new Vector. <String>()
нельзя присвоить переменной, которая объявлена с типом данных Vector.<int>. Базовые типы должны быть полностью идентичны. Например, следующий код не компилируется, поскольку базовый тип объекта отличается от базового типа, объявленного для переменной (несмотря на то, что Sprite — подкласс класса DisplayObject):
// This code doesn't compile even though Sprite is a DisplayObject subclass var v:Vector.<DisplayObject> = new Vector.<Sprite>();
Чтобы преобразовать вектор с базовым типом T
в вектор суперкласса T
, воспользуйтесь глобальной функцией Vector()
.
Помимо ограничения, связанного с типом данных, класс Vector имеет другие ограничения, которые отличают его от класса Array:
- Вектор принадлежит к числу плотных массивов. В отличие от объекта Array, который может иметь значения с индексами 0 и 7 даже в том случае, когда на позициях с 1 по 6 значений нет, Vector должен иметь значения (или значение
null
) на каждой позиции индекса. - Вектор может иметь фиксированную длину. Это означает, что число содержащихся в нем элементов не может изменяться.
- Доступ к элементам вектора осуществляется с контролем границ. Вам никогда не удастся прочесть значение с индексом, превышающим индекс финального элемента (
length - 1
). Вам также не удастся задать значение, индекс которого превышает текущий последний индекс (иначе говоря, значение можно присваивать только с существующим индексом или с индексом[length]
).
В результате этих ограничений экземпляр Vector имеет три основных преимущества перед экземпляром Array, все элементы которого представляют собой экземпляры одного класса:
- Производительность: доступ к массиву и итерация осуществляются гораздо быстрее при использовании экземпляра Vector, чем при использовании экземпляра Array.
- Безопасность типа: в строгом режиме компилятор может выявлять ошибки, связанные с типом данных. К ошибкам типа данных относится присвоение экземпляру Vector значения неверного типа данных или попытка получить неверный тип данных при считывании значения из объекта Vector. Однако следует учесть, что при использовании метода
push()
илиunshift()
для добавления значений в экземпляр Vector типы данных для аргументов не проверяются во время компиляции. Вместо этого они проверяются во время выполнения. - Надежность: проверка диапазона во время выполнения (или проверка фиксированной длины) значительно увеличивает надежность по сравнению с экземплярам Array.
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
fixed : Boolean
Указывает, можно ли изменить свойство length вектора. | Vector | ||
length : uint
Диапазон действительных индексов, которые доступны в векторе. | Vector |
Метод | Определено | ||
---|---|---|---|
Создает вектор с указанным базовым типом. | Vector | ||
Указанные в списке параметров векторы сцепляются с элементами в этом векторе, и создается новый вектор. | Vector | ||
Выполняет тестовую функцию для каждого элемента вектора, пока не будет достигнут элемент, возвращающий значение false для заданной функции. | Vector | ||
Выполняет тестовую функцию для каждого элемента вектора и формирует новый вектор из всех элементов, возвращающих значение true для заданной функции. | Vector | ||
Выполняет функцию для каждого элемента вектора. | Vector | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Выполняет поиск элемента в векторе и возвращает позицию индекса элемента. | Vector | ||
Вставьте один элемент в вектор. | Vector | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Преобразует элементы вектора в строки, вставляет указанный разделитель между элементами, сцепляет их и возвращает получившуюся строку. | Vector | ||
Поиск элемента в векторе, выполняемый в обратном направлении от указанной позиции индекса, и возврат позиции индекса совпадающего элемента. | Vector | ||
Выполняет функцию, относящуюся к каждому элементу вектора, и возвращает новый вектор, состоящий из элементов, соответствующих результатам вызова функции, которая выполняется для каждого элемента данного вектора. | Vector | ||
pop():T
Удаляет последний элемент из вектора и возвращает его. | Vector | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Добавляет один или несколько элементов в конец вектора и возвращает новую длину вектора. | Vector | ||
Удалите один элемент из вектора. | Vector | ||
Меняет порядок элементов вектора на обратный. | Vector | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
shift():T
Удаляет первый элемент из вектора и возвращает этот элемент. | Vector | ||
Возвращает новый вектор, состоящий из диапазона элементов исходного вектора, не модифицируя исходный вектор. | Vector | ||
Выполняет тестовую функцию для каждого элемента вектора, пока не будет достигнут элемент, возвращающий значение true. | Vector | ||
Упорядочивает элементы в объекте Vector и возвращает упорядоченный объект. | Vector | ||
Добавляет и удаляет элементы из вектора. | Vector | ||
Возвращает строку, представляющую элементы указанного вектора. | Vector | ||
Возвращает строку, представляющую элементы вектора. | Vector | ||
Добавляет один или несколько элементов в начало вектора и возвращает новую длину вектора. | Vector | ||
Возвращает элементарное значение заданного объекта. | Object |
fixed | свойство |
fixed:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Указывает, можно ли изменить свойство length
вектора. Если присвоено значение true
, свойство length
невозможно изменить. Это означает, что если свойству fixed
присвоено значение true
, следующие операции не разрешены:
- установка свойства
length
напрямую; - присвоение значения позиции индекса
length
; - вызов метода, изменяющего свойство
length
, включаяpop(),
push(),
shift(),
unshift(),
splice()
(если вызов методаsplice()
приводит к изменениюlength
вектора).
Реализация
public function get fixed():Boolean
public function set fixed(value:Boolean):void
length | свойство |
length:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Диапазон действительных индексов, которые доступны в векторе. Экземпляр вектора обладает позициями индекса вплоть до значения length
, но не включает само это значение.
Каждому элементу вектора всегда присваивается либо экземпляр базового типа, либо значение null
. Когда свойству length
присваивается значение, которое превышает предыдущее значение, создаются дополнительные элементы, которые заполняются значениями по умолчанию, соответствующими базовому типу (null
для ссылочных типов).
Когда свойству length
присваивается значение, которое меньше предыдущего значения, из вектора удаляются все значения с позициями индекса, которые превышают или равняются новому значению length
.
Реализация
public function get length():uint
public function set length(value:uint):void
Выдает
RangeError — Если это свойство изменяется, когда свойству fixed присвоено значение true .
| |
RangeError — Если этому свойству присваивается значение, превышающее максимально допустимый индекс (232).
|
Vector | () | Конструктор |
public function Vector(length:uint = 0, fixed:Boolean = false)
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Создает вектор с указанным базовым типом.
При вызове конструктора Vector.<T>()
укажите базовый тип с помощью синтаксиса параметра типа. Синтаксис параметра типа представляет собой последовательность, состоящую из точки (.
), открывающей угловой скобки (<
), имени класса и закрывающей угловой скобки (>
), как показано в примере:
var v:Vector.<String> = new Vector.<String>();
Чтобы создать экземпляр Vector на основе экземпляра Array или другого экземпляра Vector (который, например, имеет другой базовый тип), воспользуйтесь глобальной функцией Vector()
.
Чтобы создать предварительно заполненный экземпляр Vector, используйте следующий синтаксис вместо перечисленных ниже параметров.
// var v:Vector.<T> = new <T>[E0, ..., En-1 ,]; // For example: var v:Vector.<int> = new <int>[0,1,2,];
К данному синтаксису относится следующая информация.
- Это поддерживается во Flash Professional CS5, Flash Builder 4 и Flex 4, а также в более поздних версиях этих приложений.
- Запятую в конце ставить не обязательно.
- Пустые элементы в массиве не поддерживаются; инструкция, такая как
var v:Vector.<int> = new <int>[0,,2,]
выдает ошибку компилятора. - Для экземпляра Vector нельзя задать длину по умолчанию. Его длина равна числу элементов в списке инициализации.
- Для экземпляра Vector нельзя задать фиксированную длину. Вместо этого следует использовать свойство
fixed
. - Использование значений, не соответствующих заданному типу, может привести к ошибкам или потере данных. Например:
var v:Vector.<int> = new <int>[4.2]; // compiler error when running in strict mode trace(v[0]); //returns 4 when not running in strict mode
length:uint (default = 0 ) — Исходная длина (число элементов) вектора. Если этот параметр больше нуля, создается указанное число элементов вектора со значениями по умолчанию для данного базового типа (для ссылочных типов — null ).
| |
fixed:Boolean (default = false ) — Независимо от того, фиксированная ли длина вектора (true ) или ее можно изменять (false ). Значение также можно задать с помощью свойства fixed .
|
Связанные элементы API
concat | () | метод |
AS3 function concat(... args):Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Указанные в списке параметров векторы сцепляются с элементами в этом векторе, и создается новый вектор. Векторы в списке параметров и этот вектор должны относиться к одному базовому типу (подтипу). Если параметры не передаются, возвращенный вектор дублирует исходный вектор (как поверхностный клон).
Параметры
... args — Неотрицательное количество векторов базового типа (подтипа) этого вектора.
|
Vector.<T> — Вектор с тем же базовым типом, что и данный вектор, содержащий элементы данного вектора, вслед за которыми указываются элементы из векторов в списке параметров.
|
Выдает
TypeError — Если какой-либо аргумент не является вектором базового типа или не может быть преобразован в вектор базового типа.
|
every | () | метод |
AS3 function every(callback:Function, thisObject:Object = null):Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Выполняет тестовую функцию для каждого элемента вектора, пока не будет достигнут элемент, возвращающий значение false
для заданной функции. Этот метод используется для того, чтобы определить, все ли элементы вектора соответствуют критерию (например, их значения должны быть меньше определенного числа).
Второй параметр этого метода, thisObject
, должен иметь значение null
, если первый параметр, callback
, завершает метод. Чаще всего данный метод используется именно так.
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте this
:
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Допустим, что используется метод every()
по отношению к вектору myVector
:
myVector.every(myFunction, someObject);
Поскольку функция myFunction
принадлежит к основному классу этого SWF-файла, ее нельзя выполнить с другим контекстом this
. Среды выполнения Flash выдают исключение при выполнении этого кода. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.every(myFunction, someObject);
Параметры
callback:Function — Функция, выполняемая с каждым элементом вектора. Эта функция вызывается с тремя аргументами: текущим элементом из вектора, индексом элемента и объектом Vector.
function callback(item:T, index:int, vector:Vector.<T>):Boolean { // your code here } Функция обратного вызова должна возвращать логическое значение. | |
thisObject:Object (default = null ) — Объект, к которому относится идентификатор this в функции обратного вызова при ее вызове.
|
Boolean — Логическое значение true , если указанная функция возвращает true при вызове по отношению ко всем элементам вектора. В противном случае возвращается false .
|
Связанные элементы API
filter | () | метод |
AS3 function filter(callback:Function, thisObject:Object = null):Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Выполняет тестовую функцию для каждого элемента вектора и формирует новый вектор из всех элементов, возвращающих значение true
для заданной функции. Если элемент возвращает значение false
, он не включается в получившийся вектор. Базовый тип возвращаемого вектора совпадает с базовым типом вектора, по которому вызывается метод.
Второй параметр этого метода, thisObject
, должен иметь значение null
, если первый параметр, callback
, завершает метод. Чаще всего данный метод используется именно так.
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте this
:
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Допустим, что используется метод filter()
по отношению к вектору myVector
:
var result:Vector.<T> = myVector.filter(myFunction, someObject);
Поскольку функция myFunction
принадлежит к основному классу этого SWF-файла, ее нельзя выполнить с другим контекстом this
. Среды выполнения Flash выдают исключение при выполнении этого кода. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.filter(myFunction, someObject);
Параметры
callback:Function — Функция, выполняемая с каждым элементом вектора. Эта функция вызывается с тремя аргументами: текущим элементом из вектора, индексом элемента и объектом Vector.
function callback(item:T, index:int, vector:Vector.<T>):Boolean; | |
thisObject:Object (default = null ) — Объект, к которому относится идентификатор this в функции обратного вызова при ее вызове.
|
Vector.<T> — Новый вектор, содержащий все элементы исходного вектора, для которого функция callback возвратила значение true .
|
Связанные элементы API
forEach | () | метод |
AS3 function forEach(callback:Function, thisObject:Object = null):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Выполняет функцию для каждого элемента вектора.
Второй параметр этого метода, thisObject
, должен иметь значение null
, если первый параметр, callback
, завершает метод. Чаще всего данный метод используется именно так.
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте this
:
function myFunction(item:T, index:int, vector:Vector.<T>):void { // your code here }
Допустим, что используется метод forEach()
по отношению к вектору myVector
:
myVector.forEach(myFunction, someObject);
Поскольку функция myFunction
принадлежит к основному классу этого SWF-файла, ее нельзя выполнить с другим контекстом this
. Среды выполнения Flash выдают исключение при выполнении этого кода. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.forEach(myFunction, someObject);
Параметры
callback:Function — Функция, выполняемая с каждым элементом вектора. Эта функция вызывается с тремя аргументами: текущим элементом из вектора, индексом элемента и объектом Vector.
function callback(item:T, index:int, vector:Vector.<T>):void; Любое возвращаемое в результате вызова функции значение пропускается. | |
thisObject:Object (default = null ) — Объект, к которому относится идентификатор this в функции обратного вызова при ее вызове.
|
indexOf | () | метод |
AS3 function indexOf(searchElement:T, fromIndex:int = 0):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Выполняет поиск элемента в векторе и возвращает позицию индекса элемента. Этот элемент сравнивается с элементами вектора с помощью строгого равенства (===
).
Параметры
searchElement:T — Элемент, который нужно найти в векторе.
| |
fromIndex:int (default = 0 ) — Место в векторе, с которого начинается поиск элемента. Если этот параметр имеет отрицательное значение, он воспринимается как length + fromIndex . Это означает, что поиск начинается с -fromIndex элементов с конца и продолжается с этой позиции вплоть до конца вектора.
|
int — Позиция индекса, начинающегося с нуля, для элемента вектора. Если аргумент searchElement не найден, возвращается значение «-1».
|
Связанные элементы API
insertAt | () | метод |
AS3 function insertAt(index:int, element:T):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 19, AIR 19 |
Вставьте один элемент в вектор. Этот метод изменяет вектор, не создавая копии.
Параметры
index:int — Целое число, указывающее позицию в векторе, куда необходимо вставить элемент. Чтобы указать позицию относительно конца вектора, можно использовать отрицательное число (например, «-1» — это последний элемент вектора).
| |
element:T |
Выдает
RangeError — Если метод вызывается при значении true параметра fixed .
|
join | () | метод |
AS3 function join(sep:String = ","):String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Преобразует элементы вектора в строки, вставляет указанный разделитель между элементами, сцепляет их и возвращает получившуюся строку. Вложенный вектор всегда разделяется запятой (,), а не разделителем, переданным методу join()
.
Параметры
sep:String (default = ", ") — Символ или строка, которые разделяют элементы вектора в возвращенной строке. Если этот параметр пропустить, в качестве разделителя по умолчанию используется запятая.
|
String — Строка, состоящая из элементов вектора, преобразованных в строки и разделенных указанной строкой.
|
Связанные элементы API
lastIndexOf | () | метод |
AS3 function lastIndexOf(searchElement:T, fromIndex:int = 0x7fffffff):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Поиск элемента в векторе, выполняемый в обратном направлении от указанной позиции индекса, и возврат позиции индекса совпадающего элемента. Этот элемент сравнивается с элементами вектора с помощью строгого равенства (===
).
Параметры
searchElement:T — Элемент, который нужно найти в векторе.
| |
fromIndex:int (default = 0x7fffffff ) — Место в векторе, с которого начинается поиск элемента. Значением по умолчанию является максимально разрешенное значение индекса, что означает, что поиск начинается с последнего элемента вектора.
Если этот параметр имеет отрицательное значение, он воспринимается как |
int — Позиция индекса, начинающегося с нуля, для элемента вектора. Если аргумент searchElement не найден, возвращается значение «-1».
|
Связанные элементы API
map | () | метод |
AS3 function map(callback:Function, thisObject:Object = null):Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Выполняет функцию, относящуюся к каждому элементу вектора, и возвращает новый вектор, состоящий из элементов, соответствующих результатам вызова функции, которая выполняется для каждого элемента данного вектора. Итоговый вектор имеет тот же базовый тип и length
, что и исходный. Элемент с индексом i
в получаемом векторе является результатом вызова элемента с индексом i
в исходном векторе.
Второй параметр этого метода, thisObject
, должен иметь значение null
, если первый параметр, callback
, завершает метод. Чаще всего данный метод используется именно так.
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте this
:
function myFunction(item:Object, index:int, vector:Vector.<T>):T { // your code here }
Допустим, что используется метод map()
по отношению к вектору myVector
:
myVector.map(myFunction, someObject);
Поскольку функция myFunction
принадлежит к основному классу этого SWF-файла, ее нельзя выполнить с другим контекстом this
. Среды выполнения Flash выдают исключение при выполнении этого кода. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.map(myFunction, someObject);
Параметры
callback:Function — Функция, выполняемая с каждым элементом вектора. Эта функция вызывается с тремя аргументами: текущим элементом из вектора, индексом элемента и объектом Vector.
function callback(item:T, index:int, vector:Vector.<T>):T; | |
thisObject:Object (default = null ) — Объект, к которому относится идентификатор this в функции обратного вызова при ее вызове.
|
Vector.<T> — Новый вектор, который содержит результаты вызова функции для каждого элемента данного вектора. Итоговый вектор имеет тот же базовый тип и length , что и исходный.
|
Связанные элементы API
pop | () | метод |
AS3 function pop():T
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Удаляет последний элемент из вектора и возвращает его. Значение свойства length
этого вектора уменьшается на 1 при вызове этой функции.
T — Значение последнего элемента в указанном векторе.
|
Выдает
RangeError — Если метод вызывается при значении true параметра fixed .
|
Связанные элементы API
push | () | метод |
AS3 function push(... args):uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Добавляет один или несколько элементов в конец вектора и возвращает новую длину вектора.
Поскольку эта функция поддерживает несколько аргументов, тип данных этих аргументов не проверяется во время компиляции даже тогда, когда она выполняется в строгом режиме. Однако, если передан аргумент, который не является экземпляром базового типа, во время выполнения возникает исключение.
Параметры
... args — Одно или несколько значений, добавляемых в вектор.
|
uint — Длина вектора после добавления новых элементов.
|
Выдает
TypeError — Если какой-либо аргумент не является экземпляром базового типа T вектора.
| |
RangeError — Если метод вызывается при значении true параметра fixed .
|
Связанные элементы API
removeAt | () | метод |
AS3 function removeAt(index:int):T
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 19, AIR 19 |
Удалите один элемент из вектора. Этот метод изменяет вектор, не создавая копии.
Параметры
index:int — Целое число, указывающее индекс удаляемого элемента в векторе. Чтобы указать позицию относительно конца вектора, можно использовать отрицательное число (например, «-1» — это последний элемент вектора).
|
T — Элемент, который был удален из исходного вектора.
|
Выдает
RangeError — Если аргумент index указывает на подлежащий удалению индекс, который находится за границами вектора.
| |
RangeError — Если метод вызывается при значении true параметра fixed .
|
reverse | () | метод |
AS3 function reverse():Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Меняет порядок элементов вектора на обратный. Этот метод изменяет вектор, для которого он вызывается.
ВозвращаетVector.<T> — Вектор, элементы которого представлены в обратном порядке.
|
shift | () | метод |
AS3 function shift():T
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Удаляет первый элемент из вектора и возвращает этот элемент. Оставшиеся элементы вектора перемещаются с исходной позиции «i» на позицию «i-1».
ВозвращаетT — Первый элемент вектора.
|
Выдает
RangeError — Если fixed принимает значение true .
|
Связанные элементы API
slice | () | метод |
AS3 function slice(startIndex:int = 0, endIndex:int = 16777215):Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает новый вектор, состоящий из диапазона элементов исходного вектора, не модифицируя исходный вектор. Возвращенный вектор включает элемент startIndex
и все элементы вплоть до него, исключая элемент endIndex
.
Если параметры не передаются, новый экземпляр Vector дублирует исходный Vector (как поверхностный клон). Если для обоих параметров передано значение 0, создается новый пустой экземпляр Vector того же типа, что и исходный массив Vector.
Параметры
startIndex:int (default = 0 ) — Число, указывающее на индекс начальной позиции среза. Если startIndex — отрицательное число, начальной позицией становится конец вектора, последнему элементу которого присваивается позиция «-1».
| |
endIndex:int (default = 16777215 ) — Число, указывающее на индекс конечной позиции среза. Если этот параметр пропустить, срез включает все элементы от начальной позиции до конца вектора. Если endIndex — отрицательное число, конечная позиция указывается с конца вектора, последнему элементу которого присваивается позиция «-1».
|
Vector.<T> — Вектор, состоящий из диапазона элементов исходного вектора.
|
some | () | метод |
AS3 function some(callback:Function, thisObject:Object = null):Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Выполняет тестовую функцию для каждого элемента вектора, пока не будет достигнут элемент, возвращающий значение true
. Этот метод используется для того, чтобы определить, все ли элементы вектора соответствуют критерию (например, их значения должны быть меньше определенного числа).
Второй параметр этого метода, thisObject
, должен иметь значение null
, если первый параметр, callback
, завершает метод. Чаще всего данный метод используется именно так.
Однако предположим, что вы создаете функцию для кадра на основной временной шкале, но хотите, чтобы она вызывалась в другом контексте this
:
function myFunction(item:Object, index:int, vector:Vector.<T>):Boolean { // your code here }
Допустим, что используется метод some()
по отношению к вектору myVector
:
myVector.some(myFunction, someObject);
Поскольку функция myFunction
принадлежит к основному классу этого SWF-файла, ее нельзя выполнить с другим контекстом this
. Среды выполнения Flash выдают исключение при выполнении этого кода. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.some(myFunction, someObject);
Параметры
callback:Function — Функция, выполняемая с каждым элементом вектора. Эта функция вызывается с тремя аргументами: текущим элементом из вектора, индексом элемента и объектом Vector.
function callback(item:T, index:int, vector:Vector.<T>):Boolean Функция обратного вызова должна возвращать логическое значение. | |
thisObject:Object (default = null ) — Объект, к которому относится идентификатор this в функции обратного вызова при ее вызове.
|
Boolean — Логическое значение true присваивается, если какие-либо элементы в векторе возвращают значение true для указанной функции; в противном случае присваивается значение false .
|
Связанные элементы API
sort | () | метод |
AS3 function sort(sortBehavior:*):Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Упорядочивает элементы в объекте Vector и возвращает упорядоченный объект. Этот метод служит для сортировки в соответствии с параметром sortBehavior
, который может являться функцией сравнения двух значений или набором параметров сортировки.
Этот метод принимает один параметр. Параметром может служить следующее:
- функция, принимающая два аргумента типа base (
T
) объекта Vector и возвращающая значение Number:function compare(x:T, y:T):Number {}
Логика функции такова, что при наличии двух элементов
x
иy
функция возвращает одно из следующих трех значений:- отрицательное число, если
x
стоит передy
после сортировки; - 0, если
x
равноy
; - положительное число, если элемент
x
должен следовать заy
в отсортированной последовательности.
- отрицательное число, если
- число, являющееся результатом побитового сравнения ИЛИ следующих значений:
- 1 или
Array.CASEINSENSITIVE
- 2 или
Array.DESCENDING
- 4 или
Array.UNIQUESORT
- 8 или
Array.RETURNINDEXEDARRAY
- 16 или
Array.NUMERIC
Если значение равно 0, сортировка выполняется следующим образом.
- Сортировка зависит от регистра (Z предшествует a).
- Сортировка выполняется в восходящем порядке (a предшествует b).
- Массив изменяется, отражая порядок сортировки; несколько элементов, имеющих идентичные поля сортировки последовательно размещаются в отсортированном массиве без определенного порядка.
- Все элементы независимо от типа данных сортируются так, как если бы это были строки. Число 100 предшествует числу 99, поскольку «1» — это строковое значение, которое меньше «9».
- 1 или
Параметры
sortBehavior:* — Значение Function или Number , которое определяет поведение при сортировке. Параметр Function определяет метод сравнения. Значение Number определяет параметры сортировки.
|
Vector.<T> — Объект Vector, элементы которого расположены в новом порядке.
|
Связанные элементы API
splice | () | метод |
AS3 function splice(startIndex:int, deleteCount:uint = 4294967295, ... items):Vector.<T>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Добавляет и удаляет элементы из вектора. Этот метод изменяет вектор, не создавая копии.
Примечание. Чтобы переопределить этот метод в подклассе Vector, укажите для параметров значение ...args
как показано в примере:
public override function splice(...args) { // your statements here }
Параметры
startIndex:int — Целое число, указывающее индекс элемента в векторе, откуда начинается вставка или удаление. Чтобы указать позицию относительно конца вектора, можно использовать отрицательное число (например, «-1» — это последний элемент вектора).
| |
deleteCount:uint (default = 4294967295 ) — Целое число, указывающее количество удаляемых элементов. Это число включает элемент, указанный в параметре startIndex . Если значение равно 0, элементы не удаляются.
| |
... items — Необязательный список, состоящий из одного или нескольких значений, разделенных запятыми, которые вставляется в вектор на позиции, указанной параметром startIndex .
|
Vector.<T> — Вектор, содержащий элементы, удаленные из исходного вектора.
|
Выдает
RangeError — Если аргументы startIndex и deleteCount указывают подлежащий удалению индекс, который находится за границами вектора.
| |
RangeError — Если этот метод вызывается, когда свойству fixed присвоено значение true , а операция splice() приводит к изменению length вектора.
|
toLocaleString | () | метод |
public function toLocaleString():String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает строку, представляющую элементы указанного вектора. Каждый элемент в векторе, начиная с индекса 0 и заканчивая наибольшим индексом, преобразуется в сцепленную строку, разделенную запятыми. В рамках ActionScript 3.0 этот метод возвращает то же значение, что и метод Vector.toString()
.
String — Строка с элементами вектора.
|
Связанные элементы API
toString | () | метод |
public function toString():String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает строку, представляющую элементы вектора. Каждый элемент в векторе, начиная с индекса 0 и заканчивая наибольшим индексом, преобразуется в сцепленную строку, разделенную запятыми. Чтобы указать пользовательский разделитель, примените метод Vector.join()
.
String — Строка с элементами вектора.
|
Связанные элементы API
unshift | () | метод |
AS3 function unshift(... args):uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Добавляет один или несколько элементов в начало вектора и возвращает новую длину вектора. Другие элементы вектора перемещаются с исходной позиции (i) на позицию (i + количество новых элементов).
Поскольку эта функция поддерживает несколько аргументов, тип данных этих аргументов не проверяется во время компиляции даже тогда, когда она выполняется в строгом режиме. Однако, если передан аргумент, который не является экземпляром базового типа, во время выполнения возникает исключение.
Параметры
... args — Один или несколько экземпляров базового типа вектора, которые вставляются в начало вектора.
|
uint — Целое число, выражающее новую длину вектора.
|
Выдает
TypeError — Если какой-либо аргумент не является экземпляром базового типа T вектора.
| |
RangeError — Если метод вызывается при значении true параметра fixed .
|
Связанные элементы API
Tue Jun 12 2018, 11:34 AM Z