Применяя методы, относящиеся к E4X, можно использовать поочередно строки и объекты QName. Методы E4X представлены в классах QName, Namespace, XML и XMLList. Эти методы принимают как строки, так и объекты QName. Эта взаимозаменяемость проявляется, например, в том, как поддержка пространства имен обрабатывает метод
В классе QName (а также в классах XML, XMLList и Namespace) реализованы мощные стандарты обработки XML, определенные в языке ECMAScript для спецификации XML E4X (ECMA-357, второе издание).
Результаты оценки с помощью классифицированного идентификатора записываются в объект QName. Если объект QName элемента XML задается без указания пространства имен, свойству
Этот код выполняет следующие функции:
Примечание. В этом классе показаны две записи конструктора, поскольку каждая из них поддерживает разные параметры. Режим работы конструктора меняется в зависимости от типа и количества переданных параметров (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.
QName (uri:Namespace, localName:String); QName (uri:String, localName: QName); QName (uri:String, localName: String);
Если значение
Примечание. В этом классе показаны две записи конструктора, поскольку каждая из них поддерживает разные параметры. Режим работы конструктора меняется в зависимости от типа и количества переданных параметров (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.
Формат зависит от свойства
Ifuri == ""toString returnslocalName else ifuri == nulltoString returns ~~::localName elsetoString returnsuri ::localName
Эти методы и свойства используются для вызова и обработки математических констант и функций. Все свойства и методы класса Math являются статическими и должны вызываться с помощью синтаксиса
В нескольких методах класса Math в качестве параметра используется величина угла в радианах. Рассчитывать значения в радианах перед вызовом метода и вводить их в качестве параметра можно с помощью указанного ниже уравнения. Также допускается ввод всей правой части уравнения (с величиной угла в градусах вместо
Для вычисления значения в радианах используйте следующую формулу:
radians = degrees ~~ Math.PI/180
Эта формула позволяет перевести градусы в радианы:
degrees = radians ~~ 180/Math.PI
В данном примере уравнение применяется как параметр для расчета синуса угла в 45°:
Примечание. Результаты применения функций класса Math (acos, asin, atan, atan2, cos, exp, log, pow, sin и sqrt) могут немного различаться в зависимости от алгоритмов, используемых ЦП или операционной системой. Среда выполнения Flash направляет вызов ЦП (или операционной системе, если ЦП не поддерживает вычисления с плавающей запятой) при выполнении расчетов по функциям, входящим в список. Наблюдается незначительный разброс результатов, который зависит от используемого ЦП или операционной системы.
Метод
Метод
В элементе массива можно сохранять широкий спектр типов данных, включая числа, строки, объекты и даже другие массивы. Можно создать многомерный массив. Для этого нужно создать индексированный массив и присвоить каждому из его элементов другой индексированный массив. Такой массив считается многомерным, поскольку его можно использовать для представления данных в виде таблицы.
Массивы являются разреженными. Это значит, что один элемент может иметь индекс 0, а другой — индекс 5, но позиции индекса между двумя этими элементами будут пустыми. В подобном случае элементы на позициях с 1 по 4 не определены, что указывает на отсутствие элемента, а не обязательно на присутствие элемента со значением
Присваивание массива выполняется по ссылке, а не по значению. Когда одна переменная массива присваивается другой переменной массива, они обе относятся к одному и тому же массиву:
Не применяйте класс Array для создания массивов ассоциативных элементов (называемых также хэшами), которые представляют собой структуры данных, элементам которых присваиваются имена, а не числа. Чтобы создать массивы ассоциативных элементов, воспользуйтесь классом Object. Хотя ActionScript позволяет создавать массивы ассоциативных элементов с помощью класса Array, ни один из методов и свойств класса Array нельзя использовать с этими массивами.
Класс Array можно расширить, переопределив или добавив методы. Однако этот подкласс необходимо сделать
Примечание. Если в конструктор Array передается единичный числовой параметр, предполагается, что указано свойство массива
Примечание. В этом классе показаны две записи конструктора, поскольку конструктор поддерживает разные типы аргументов. Режим работы конструктора меняется в зависимости от типа и количества переданных аргументов (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.
Примечание. В этом классе показаны две записи метода конструктора, поскольку конструктор поддерживает разные типы аргументов. Режим работы конструктора меняется в зависимости от типа и количества переданных аргументов (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.
function callback(item:*, index:int, array:Array):Boolean;
Второй параметр этого метода,
function myFunction(obj:Object):void { //your code here }
Допустим, что используется метод
myArray.every(myFunction, me);
Поскольку
var myFunction:Function = function(obj:Object):void { //your code here }; myArray.every(myFunction, me);
function callback(item:*, index:int, array:Array):Boolean;
Второй параметр этого метода,
function myFunction(obj:Object):void { //your code here }
Допустим, что используется метод
myArray.filter(myFunction, me);
Поскольку
var myFunction:Function = function(obj:Object):void { //your code here }; myArray.filter(myFunction, me);
function callback(item:*, index:int, array:Array):void;
Второй параметр этого метода,
function myFunction(obj:Object):void { //your code here }
Допустим, что используется метод
myArray.forEach(myFunction, me);
Поскольку
var myFunction:Function = function(obj:Object):void { //your code here }; myArray.forEach(myFunction, me);
function callback(item:*, index:int, array:Array):String;
Второй параметр этого метода,
function myFunction(obj:Object):void { //your code here }
Допустим, что используется метод
myArray.map(myFunction, me);
Поскольку
var myFunction:Function = function(obj:Object):void { //your code here }; myArray.map(myFunction, me);
Если параметры не передаются, новый массив дублирует исходный массив (как поверхностный клон).
function callback(item:*, index:int, array:Array):Boolean;
Второй параметр этого метода,
function myFunction(obj:Object):void { //your code here }
Допустим, что используется метод
myArray.some(myFunction, me);
Поскольку
var myFunction:Function = function(obj:Object):void { //your code here }; myArray.some(myFunction, me);
Подсказки для кодов включаются, если используется строковый формат флага (например,
При указании нескольких параметров
По умолчанию
В Flash Player 7 добавлен параметр
Чтобы установить несколько флагов, разделите их побитовыми операторами ИЛИ (
В Flash Player 8 добавлена возможность выбора разных вариантов сортировки для каждого поля, когда сортировка выполняется более чем по одному полю. В Flash Player, начиная с версии 8, параметр
Примечание. Массивы
Затем массив сортируется следующими способами:
Затем создается массив
В этом методе используется синтаксис и порядок аргументов
По умолчанию
Чтобы выполнить сортировку массива, используя настройки, которые отличаются от настроек по умолчанию, можно либо воспользоваться одной из возможностей сортировки, описанной в разделе
Примечание. Режим функции
Примечание. Для переопределения этого метода в подклассе Array укажите для параметров значение
public override function splice(...args) { // your statements here }
Значение этой константы равно 1.
Значение этой константы равно 2.
Например, если имеется массив значений
Эта константа применяется только к числам в массиве; она не применяется к строкам, которые содержат числовые данные (например,
Значение этой константы равно 16.
Значение этой константы равно 8.
Значение этой константы равно 4.
Примечание. Если свойству
Новый объект RegExp можно создать с помощью конструктора
Дополнительные сведения см. в главе «Использование регулярных выражений» в Руководстве разработчика по ActionScript 3.0.
Примечания.
В первом выражении необходимо в данном случае ввести символ обратной косой черты дважды, поскольку первый параметр метода конструктора
Все остальные символы в строке
Если флаг
Если флаг
Объекту
В следующем примере флаг
Результатом выполнения этого кода становится следующие выходные данные:
0 She,,e 10 seashells,sea,ells 27 seashore,sea,ore
Если флаг
Если флаг
Воспользуйтесь флагом
Когда метод
Свойство
Класс Date по-разному обрабатывает переход на летнее время в зависимости от операционной системы и версии среды выполнения. Flash Player версии 6 и выше учитывает переход на летнее время в следующих операционных системах.
Переход на летнее время обрабатывается Flash Player 5 в следующих операционных системах.
Чтобы воспользоваться классом Date, создайте экземпляр Date с помощью оператора
В ActionScript 3.0 добавлено несколько новых свойств средств доступа, которыми можно пользоваться вместо многих методов класса Date, которые выполняют доступ к экземплярам Date или модифицируют их. Также ActionScript 3.0 содержит ряд новых вариантов метода
Чтобы вычислить относительное или прошедшее время, воспользуйтесь методом
Конструктор
Если конструктору класса Date передается строка, дата может быть представлена в разных форматах, но должна включать, по крайней мере, месяц, дату и год. Например,
Этот метод полезен, если требуется передать дату в формате всемирного скоординированного времени (UTC) конструктору класса Date. Поскольку конструктор класса данных Date поддерживает в качестве аргумента смещение в миллисекундах, можно воспользоваться методом Date.UTC(), чтобы преобразовать дату в формате UTC в соответствующее смещение, выраженное в миллисекундах, а затем отправить это смещение в качестве аргумента конструктору класса Date:
function addMonths(num:Number):void { currentMonth = currentMonth + num; if(currentMonth > 12) { currentYear++; currentMonth = currentMonth - 12; } }
Day Mon DD HH:MM:SS TZD YYYY
Например:
Wed Apr 12 15:30:17 GMT-0700 2006
Идентификатор временного пояса (TZD) всегда представлен в формате
MM/DD/YYYY HH:MM:SS TZD HH:MM:SS TZD Day Mon/DD/YYYY Mon DD YYYY HH:MM:SS TZD Day Mon DD HH:MM:SS TZD YYYY Day DD Mon HH:MM:SS TZD YYYY Mon/DD/YYYY HH:MM:SS TZD YYYY/MM/DD HH:MM:SS TZD
Вызов этого метода не приводит к изменению других полей объекта
При желании этот метод может установить также месяц и день месяца. Вызов этого метода не приводит к изменению других полей, но методы
Day Mon Date HH:MM:SS TZD YYYY
Например:
Wed Apr 12 15:30:17 GMT-0700 2006
Все классы, которые не объявляют базовый класс явным образом, расширяют встроенный класс Object.
Класс Object можно использовать для создания массивов ассоциативных элементов. В сущности, массив ассоциативных элементов является экземпляром класса Object, и каждая пара «ключ-значение» представлена свойством и его значением. Еще одна причина объявить массив ассоциативных элементов с помощью типа данных Object состоит в том, что после этого можно использовать литерал объекта, чтобы заполнить массив ассоциативных элементов (но только в тот раз, когда он объявлен). В следующем примере массив ассоциативных элементов создается с помощью литерала объекта, доступ к элементам выполняется как с помощью оператора-точки, так и посредством оператора доступа к массиву, а затем путем создания нового свойства создается новая пара ключ-значение:
ActionScript 3.0 имеет два типа наследования: наследование классов и наследование прототипов:
Наследование классов и наследование прототипов может выполняться одновременно, как показано в следующем примере.
Заменив класс функциями, можно создавать пользовательские деревья наследования прототипов. В случае классов дерево наследования прототипов аналогично дереву наследования классов. Однако, поскольку объекты прототипов являются динамическими, можно добавить или удалить свойства, основанные на прототипах во время выполнения.
В примере создаются объекты значений
Следующие типы свойств заставляют метод возвращать значение
В ActionScript 3.0 тоже есть объекты классов, которые прямо представляют определения классов. Когда метод
Примечание. Методы класса Object динамически создаются в прототипе Object. Чтобы переопределить этот метод в подклассе Object, не используйте ключевое слово
Примечание. Методы класса Object динамически создаются в прототипе Object. Чтобы переопределить этот метод в подклассе Object, не используйте ключевое слово
Array.length
property, is not enumerable.
Созданные пользователем свойства перечисляемы, а встроенные свойства, как правило, нет.
Примечание. Методы класса Object динамически создаются в прототипе Object. Чтобы переопределить этот метод в подклассе Object, не используйте ключевое слово
Внедрение по умолчанию для этого метода не выполняет специфичное для локали форматирование и возвращает ту же самую строку как
Примечание. Методы класса Object динамически создаются в прототипе Object. Чтобы переопределить этот метод в подклассе Object, не используйте ключевое слово
Примечание. Методы класса Object динамически создаются в прототипе Object. Чтобы переопределить этот метод в подклассе Object, не используйте ключевое слово
Примечание. Методы класса Object динамически создаются в прототипе Object. Чтобы переопределить этот метод в подклассе Object, не используйте ключевое слово
Если ключевое слово
Опытные пользователи могут выбрать ключевое слово
Примечание. Свойство
При выполнении доступа к свойству
prototype
property of the Circle class points to its superclass Shape. The identifier Shape
refers to the constructor function of the Shape class.
prototype
property and the __proto__
property together to move two levels up the inheritance hierarchy (or prototype chain). The Circle.prototype.__proto__
property contains a reference to the superclass of the Shape class.
Объект прототипа класса — это особый экземпляр данного класса, обеспечивающий механизм распространения состояния на все экземпляры класса. Если во время выполнения в экземпляре класса не найдено свойство, наличие свойства проверяется у делегата, в роли которого выступает объект прототипа класса. Если объект прототипа не содержит свойства, этот процесс выполняется по отношению к делегату объекта прототипа. При этом проверка производится последовательно на все более и более высоких уровнях иерархии до тех пор, пока среда выполнения Flash не найдет свойство.
Примечание. В ActionScript 3.0 наследование прототипов не является основным механизмом наследования. Главный механизм наследования в ActionScript 3.0 — это наследование классов, обеспечивающее наследование фиксированных свойств в определениях классов.
Примеры ошибок защиты.
Однако можно ссылаться на неопределенные свойства динамического класса, не вызывая появление исключения ReferenceError. Дополнительную информацию можно получить, указав ключевое слово
Среди других ситуаций, вызывающих появление этого исключения, можно назвать следующие:
Постоянные свойства класса int
Тип данных int полезен для счетчиков циклов и других ситуаций, когда не требуется число с плавающей запятой. Он аналогичен типу данных int в языках Java и C++. Значение по умолчанию для переменной, введенной как int, составляет
При работе с числами, превышающими
В следующем примере вызывается метод
В следующем примере значение свойства
var smallest:int = int.MIN_VALUE;
var n1:int = new int(3.4); var n2:int = new int(-10);
var myint:int = new int(9); trace(myint.toString(2)); // 1001 trace(myint.toString(8)); // 11
Результатом выполнения следующего примера является шестнадцатеричное значение.
var r:int = new int(250); var g:int = new int(128); var b:int = new int(114); var rgb:String = "0x"+ r.toString(16)+g.toString(16)+b.toString(16); trace(rgb); // 0xfa8072
var numSocks:int = new int(2); trace(numSocks.valueOf()); // 2
trace("int.MIN_VALUE = "+int.MIN_VALUE); trace("int.MAX_VALUE = "+int.MAX_VALUE);
Этот код
int.MIN_VALUE = -2147483648 int.MAX_VALUE = 2147483647
trace("int.MIN_VALUE = "+int.MIN_VALUE); trace("int.MAX_VALUE = "+int.MAX_VALUE);
Этот код
int.MIN_VALUE = -2147483648 int.MAX_VALUE = 2147483647
Свойства класса Number статичны. При этом для того, чтобы пользоваться ими, не нужен объект, а значит не требуется использовать конструктор.
Тип данных Number относится к стандарту двойной точности IEEE-754.
Тип данных Number полезен, если необходимо использовать значения с плавающей запятой. Среда выполнения Flash обрабатывает типы данных int и uint эффективней, чем Number. Но последний полезен в ситуациях, когда диапазон требуемых значений выходит за пределы действительного диапазона типов данных int и uint. Класс Number можно использовать для представления целых значений, которые находятся далеко за пределами действительного диапазона типов данных int и uint. В типе данных Number для представления целых значений может отводиться до 53 бит в отличие от типов данных int и uint, для которых отводится 32 бита. Значение по умолчанию для переменной, введенной как Number, —
Минус бесконечность — это особое числовое значение, возвращаемое в том случае, когда математическая операция или функция возвращают отрицательное значение, которое не может быть представлено из-за слишком большой длины.
Плюс бесконечность – это особое числовое значение, возвращаемое в том случае, когда математическая операция или функция возвращают значение, которое не может быть представлено из-за слишком большой длины.
Методы класса немного отличаются от объектов Function. В отличие от обычного объекта функции метод тесно связан со связанным объектом класса. Поэтому метод или свойство имеют определение, используемое всеми экземплярами одного и того же класса. Из экземпляра можно извлечь методы, обрабатываемые как «связанные» методы (сохраняющие ссылку на исходный экземпляр). В рамках связанного метода ключевое слово
Параметры указываются как объект Array в отличие от метода
Возвращает значение, которое вызванная функция указывает в качестве возвращаемого значения.
Почти всегда вместо этого метода можно прибегнуть к оператору вызова функции (
В некоторых ситуациях может потребоваться, чтобы
Чтобы вызвать функцию в качестве регулярной функции, а не метода объекта, можно присвоить значение
Возвращает значение, которое вызванная функция указывает в качестве возвращаемого значения.
Если объект XMLList имеет только один элемент XML, методы класса XML можно применять к объекту XMLList напрямую. В следующем примере
Если вы попытаетесь использовать методы класса XML в отношении объекта XMLList, содержащего более одного объекта XML, возникнет исключение. Вместо этого следует выполнить итерацию в коллекции XMLList (например, с помощью оператора
Чтобы показать всех потомков, воспользуйтесь параметром «звездочки» (~~). Если параметр не задан, передается строка «~~» и отображаются все потомки объекта XML.
Чтобы каждый раз возвращать весь объект XML, воспользуйтесь методом
Чтобы создать объект Boolean, можно воспользоваться конструктором или глобальной функцией либо присвоить значение литерала. Не имеет значения, какой метод использовать; в ActionScript 3.0 все три метода эквивалентны. (Это отличает его от языка JavaScript, где объект Boolean отличается от элементарного типа Boolean.)
Следующие строки кода эквивалентны:
Кроме того, можно создать подкласс класса Error и генерировать экземпляры этого подкласса.
Кроме того, оно создается в следующих случаях:
Аргументы сохраняются как элементы массива: доступ к первому из них выполняется по имени
В отличие от предыдущих версий ActionScript в ActionScript 3.0 нет свойства
ActionScript 3.0 включает новое ключевое слово
Поскольку параметру
Когда в ходе выполнения возвращается
Поскольку все индексы строк начинаются с нуля, индекс последнего символа любой строки
Можно вызвать любой метод класса String. При этом для создания новой строковой переменной можно воспользоваться методом конструктора
При выборе для строковой переменной значения
var s:String = undefined;устанавливает значение
Примечание. Поскольку строковые литералы используют меньше служебной информации, чем объекты String, и их обычно проще применять, необходимо использовать строковые литералы вместо класса String, если нет весомой причины выбрать объект String вместо строкового литерала.
Этот метод напоминает
Значения Юникод определены в спецификации
Этот метод напоминает метод
Значения Юникод определены в спецификации
var myPattern:RegExp = /sh./g;
// The dot (.) matches any character.
var str:String = "She sells seashells by the seashore.";
trace(str.match(myPattern));
// Output: she,sho
myPattern = /sh./gi;
// This time, make it case insensitive (with the i flag).
str = "She sells seashells by the seashore.";
trace(str.match(myPattern));
// Output: She,she,sho
myPattern = RegExp = new RegExp("sh(.)", "gi")
// Note the grouping parentheses.
str = "She sells seashells by the seashore.";
trace(str.match(myPattern));
// Output: She,e,she,e,sho,o
// Note that the result array is
// [[She,e],[she,e],[sho,o]]
Если
Если совпадения не найдено, метод возвращает пустой массив. Если значение не передано (или является неопределенным) как параметр
Если в качестве параметра
Например, ниже показано применение замещающих кодов
Если в качестве параметра
Например, рассмотрите один из следующих вариантов.
Вызов метода
Во второй раз шаблон совпадает с подстрокой
В следующем примере заменяется только первый экземпляр «sh» (зависит от регистра).
В следующем примере заменяются все экземпляры «sh» (зависит от регистра), поскольку в регулярном выражении установлен флаг
В следующем примере заменяются все экземпляры «sh», поскольку в регулярном выражении установлен флаг
var str:String = "She sells seashells by the seashore.";
var myPattern:RegExp = /sh/;
// This time, make it case insensitive (with the i flag).
trace(str.match(myPattern));
// Output: 13
// (The substring match starts at character position 13.)
var myPattern:RegExp = /sh/i;
trace(str.match(myPattern));
// Output: 0
// (The substring match starts at character position 0
// -- the first character of the source string.)
Если параметр
Если параметр
Если указан параметр
Если
Если параметр
Этот метод преобразует все символы (не только в диапазоне от A до Z), для которых существуют строчные эквиваленты в Юникоде:
Соответствия регистров определены в спецификации
Этот метод преобразует все символы (не только в диапазоне от A до Я), для которых существуют прописные эквиваленты в Юникоде:
Соответствия регистров определены в спецификации
valueOf
method returns
the primitive value, rather than a reference to the new instance.
Поскольку все индексы строк начинаются с нуля, индекс последнего символа любой строки
Некоторые методы, например
Имя класса – это ссылка на объект Class, как показано в данном примере:
class Foo { }
Инструкция
Для объявления классов воспользуйтесь инструкцией
Любые статические свойства и методы класса, относящиеся к текущему объекту Class класса. Сам класс при этом объявляет
Как правило, объявлять или создавать переменные типа Class вручную не требуется. Однако в следующем коде класс присваивается в качестве свойства общедоступного класса
Другой SWF-файл может загрузить итоговый файл Library.swf, а затем создать экземпляры объектов типа Circle. В следующем примере показан способ получения доступа к ресурсам нижестоящего элемента SWF-файла. (Помимо этого можно выбрать
В ActionScript 3.0 можно создавать встроенные классы для внешних ресурсов (например, изображений, звуков или шрифтов), которые компилируются в SWF-файлы. В более ранних версиях ActionScript эти ресурсы связывались с помощью идентификатора связи с методом
Например, при использовании компилятора MXML для создания SWF-файлов встроенный класс будет создаваться следующим образом:
А для создания его экземпляра будет использоваться следующая строка:
В этом классе показаны два вида метода конструктора, поскольку каждый из них поддерживает разные параметры.
В этом классе (а также в классах XML, XMLList и QName) реализованы мощные стандарты обработки XML, определенные в сценарии ECMAScript для спецификации XML E4X (ECMA-357, второе издание).
В примере определяются пространства имен и цвета, соответствующие состояниям мыши для прямоугольной кнопки. Каждый раз при создании кнопки в примере применяется подходящий цвет (красный – для курсора за пределами кнопки; желтый – для курсора на кнопке; белый – для нажатия) путем ссылки на переменную
Значение параметра
Значение параметра
Примечание. В этом классе показаны две записи метода конструктора, поскольку каждая из них поддерживает разные параметры. Режим работы конструктора меняется в зависимости от типа и количества переданных аргументов (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.
Примечание. В этом классе показаны две записи конструктора, поскольку каждая из них поддерживает разные параметры. Режим работы конструктора меняется в зависимости от типа и количества переданных параметров (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.
Воспользуйтесь методом
Примечание. Класс XML (вместе со связанными классами) из ActionScript 2.0 теперь называется XMLDocument и находится в пакете flash.xml. Он включен в ActionScript 3.0 в целях обеспечения обратной совместимости.
Воспользуйтесь методом
Воспользуйтесь оператором
Параметр
Если необходима ссылка на полное имя, можно передать объект QName. Объект QName определяет пространство имени локальное имя, которые можно использовать для определения полного имени атрибута. Поэтому вызов
Чтобы перечислить содержимое конкретного дочернего элемента XML, воспользуйтесь параметром
Укажите «звездочку» (~~), чтобы вывести все дочерние объекты в документе XML. Например,
Воспользуйтесь методом
Примечание. Этот метод не применяется к экземпляру класса XML; его следует применять к
Чтобы показать всех потомков, воспользуйтесь параметром (~~). Если параметр не задан, передается строка «~~» и отображаются все потомки объекта XML.
Чтобы включить в список все элементы, воспользуйтесь параметром «звездочки» (~~). Звездочка также является параметром по умолчанию.
Воспользуйтесь методом
trace(xml.a.(b == "11"));
Если этот метод вызывается по отношению к дочернему объекту XML, который не относится к числу элементов (текст, атрибуты, комментарии, число «пи» и т.д.), возвращается значение
Воспользуйтесь оператором
<menu> <item>burger</item> <saleItem>fries</saleItem> <item>soda</item> </menu>
Если этот метод вызывается по отношению к дочернему объекту XML, который не относится к числу элементов (текст, атрибуты, комментарии, число «пи» и т.д.), возвращается значение
Воспользуйтесь оператором
<menu> <saleItem>fries</saleItem> <item>burger</item> <item>soda</item> </menu>
rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# dc: http://purl.org/dc/elements/1.1/ (default): http://purl.org/rss/1.0/
Воспользуйтесь оператором
<body> <p>Hello</p> <p>Bob</p> <hr/> </body>
<body> <p>Hi</p> <hr/> </body>;
<ns:body xmlns:ns = "myNS"> <p>Bob</p> <hr/> </ns:body>
<body> <img src="hello.jpg"/> </body>
Примечание. Этот метод не применяется к экземпляру класса XML; его следует применять к
Чтобы каждый раз возвращать весь объект XML, воспользуйтесь методом
Когда создается объект XML, он кэширует текущее значение свойства
Примечание. При попытке использовать функцию
Функция
Возвращаемое значение зависит от типа данных и значения аргумента (см. таблицу ниже):
В отличие от предыдущих версий ActionScript функция
В таблице ниже приведены результаты при различных типах ввода.
Итоговый вектор заполняется значениями, указанными в элементах аргумента
В любом случае тип данных всех элементов аргумента
Если аргумент
Если вектор передан как аргумент
Точно так же, если элемент в аргументе
Например, следующий код приводит к появлению ошибки компиляции в строгом режиме или ошибки TypeError во время выполнения, поскольку он пытается присвоить Vector.<Sprite> переменной Vector.<DisplayObject> (Sprite — это подкласс DisplayObject).
Следующая альтернативная версия кода приводит к успешному копированию элементов экземпляра Vector.<Sprite> в экземпляр Vector.<DisplayObject>.
В таблице ниже дается описание значений, возвращаемых при различных типах ввода.
В таблице ниже дается описание значений, возвращаемых при различных типах ввода.
Отличие этой функции от функции
Другое важное различие между этой функцией и
В следующей таблице показан набор управляющих последовательностей, которые не раскодируются в виде символов функцией
Отличие функции
Другое важное различие между этой функцией и
В таблице ниже приведены все символы, которые не преобразуются в управляющие последовательности UTF-8 функцией
В таблице ниже полностью приведен список базисных символов, которые не преобразуются в управляющие последовательности UTF-8 с помощью функции
В таблице ниже приведены все символы, которые не преобразуются в управляющие последовательности функцией
Примечание. При кодировании используйте функцию
Примечание. Значение
В таблице ниже описаны значения, возвращаемые
В таблице ниже описано значение, возвращаемое
Значение
Значение
Значение
Если значение
Не путайте значения
Диапазон значений представленных классом uint составляет от 0 до 4294967295 (2 в степени 32 - 1).
Объект uint можно создать, объявив переменную типа uint и присвоив ей литеральное значение. Значение по умолчанию переменной типа uint составляет
Класс uint в основном используется для значений цветов пикселей (ARGB и RGBA) и других ситуаций, когда данные типа int неэффективны. Например, число 0xFFFFFFFF, представляющее собой значение белого цвета со значением альфа, которое равно 255, не может выражаться данными типа int, потому что оно не находится в действительном диапазоне значений int.
В следующем примере создается объект uint и вызывается метод
var myuint:uint = 1234; trace(myuint.toString()); // 1234
В следующем примере значение свойства
var smallest:uint = uint.MIN_VALUE; trace(smallest.toString()); // 0
var n1:uint = 3; var n2:uint = new uint(10);
var myuint:uint = 9; trace(myuint.toString(2)); // 1001 trace(myuint.toString(8)); // 11В примере ниже создаются шестнадцатеричные значения:
var r:uint = 250; var g:uint = 128; var b:uint = 114; var rgb:String = "0x" + r.toString(16) + g.toString(16) + b.toString(16); trace(rgb); // 0xfa8072
var numSocks:uint = 2; trace(numSocks.valueOf()); // 2
trace("uint.MIN_VALUE = " + uint.MIN_VALUE); trace("uint.MAX_VALUE = " + uint.MAX_VALUE);
Имеются следующие значения:
uint.MIN_VALUE = 0 uint.MAX_VALUE = 4294967295
trace("uint.MIN_VALUE = " + uint.MIN_VALUE); trace("uint.MAX_VALUE = " + uint.MAX_VALUE);
Имеются следующие значения:
uint.MIN_VALUE = 0 uint.MAX_VALUE = 4294967295
Как и в случае с объектом Array, можно использовать оператор доступа к массиву (
Базовый тип вектора указывается с помощью постфиксного синтаксиса параметров. Синтаксис параметра типа представляет собой последовательность, состоящую из точки (
В первой строке примера переменная
Переменная, объявленная вместе с типом данных Vector. <T>, может хранить экземпляр Vector только в том случае, если он создан с идентичным базовым типом
Чтобы преобразовать вектор с базовым типом
Помимо ограничения, связанного с типом данных, класс Vector имеет другие ограничения, которые отличают его от класса Array:
В результате этих ограничений экземпляр Vector имеет три основных преимущества перед экземпляром Array, все элементы которого представляют собой экземпляры одного класса:
При вызове конструктора
Чтобы создать экземпляр Vector на основе экземпляра Array или другого экземпляра Vector (который, например, имеет другой базовый тип), воспользуйтесь глобальной функцией
Чтобы создать предварительно заполненный экземпляр Vector, используйте следующий синтаксис вместо перечисленных ниже параметров.
К данному синтаксису относится следующая информация.
function callback(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Функция обратного вызова должна возвращать логическое значение.
Второй параметр этого метода,
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Допустим, что используется метод
myVector.every(myFunction, someObject);
Поскольку функция
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.every(myFunction, someObject);
function callback(item:T, index:int, vector:Vector.<T>):Boolean;
Второй параметр этого метода,
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Допустим, что используется метод
var result:Vector.<T> = myVector.filter(myFunction, someObject);
Поскольку функция
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.filter(myFunction, someObject);
function callback(item:T, index:int, vector:Vector.<T>):void;
Любое возвращаемое в результате вызова функции значение пропускается.
Второй параметр этого метода,
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте
function myFunction(item:T, index:int, vector:Vector.<T>):void { // your code here }
Допустим, что используется метод
myVector.forEach(myFunction, someObject);
Поскольку функция
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.forEach(myFunction, someObject);
Если этот параметр имеет отрицательное значение, он воспринимается как
function callback(item:T, index:int, vector:Vector.<T>):T;
Второй параметр этого метода,
Однако предположим, что вы создаете функцию для кадра на основной временной шкале с помощью Flash Professional, но хотите, чтобы она вызывалась в другом контексте
function myFunction(item:Object, index:int, vector:Vector.<T>):T { // your code here }
Допустим, что используется метод
myVector.map(myFunction, someObject);
Поскольку функция
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.map(myFunction, someObject);
Поскольку эта функция поддерживает несколько аргументов, тип данных этих аргументов не проверяется во время компиляции даже тогда, когда она выполняется в строгом режиме. Однако, если передан аргумент, который не является экземпляром базового типа, во время выполнения возникает исключение.
Если параметры не передаются, новый экземпляр Vector дублирует исходный Vector (как поверхностный клон). Если для обоих параметров передано значение 0, создается новый пустой экземпляр Vector того же типа, что и исходный массив Vector.
function callback(item:T, index:int, vector:Vector.<T>):Boolean
Функция обратного вызова должна возвращать логическое значение.
Второй параметр этого метода,
Однако предположим, что вы создаете функцию для кадра на основной временной шкале, но хотите, чтобы она вызывалась в другом контексте
function myFunction(item:Object, index:int, vector:Vector.<T>):Boolean { // your code here }
Допустим, что используется метод
myVector.some(myFunction, someObject);
Поскольку функция
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.some(myFunction, someObject);
Указанный метод должен взять два аргумента базового типа (
Логика функции
Примечание. Чтобы переопределить этот метод в подклассе Vector, укажите для параметров значение
public override function splice(...args) { // your statements here }
Поскольку эта функция поддерживает несколько аргументов, тип данных этих аргументов не проверяется во время компиляции даже тогда, когда она выполняется в строгом режиме. Однако, если передан аргумент, который не является экземпляром базового типа, во время выполнения возникает исключение.
Каждому элементу вектора всегда присваивается либо экземпляр базового типа, либо значение
Когда свойству