Пакет | mx.utils |
Класс | public class ObjectUtil |
Наследование | ObjectUtil Object |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
ObjectUtil.isSimple()
.
Метод | Определено | ||
---|---|---|---|
[статические]
Клонирует указанный элемент Object и возвращает ссылку на клонированный элемент. | ObjectUtil | ||
[статические]
Сравнивает объекты и возвращает целое число, определяющее, является ли первый элемент меньшим, большим или равным второму элементу. | ObjectUtil | ||
[статические]
Копирует указанный объект и возвращает ссылку на эту копию. | ObjectUtil | ||
[статические]
Сравнивает два объекта Date и возвращает целое число, определяющее, является ли первый объект Date боле ранним, равным или более поздним по отношению ко второму элементу. | ObjectUtil | ||
[статические]
Возвращает информацию о классе и свойствах класса для указанного объекта. | ObjectUtil | ||
hasMetadata(obj:Object, propName:String, metadataName:String, excludes:Array = null, options:Object = null):Boolean [статические]
Использует getClassInfo и исследует метаданные с целью определения наличия указанных метаданных в свойстве данного объекта. | ObjectUtil | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
[статические]
Возвращает true, если объект является экземпляром динамического класса. | ObjectUtil | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
[статические]
Возвращает true, если указанная ссылка на объект отнесена к простому типу данных. | ObjectUtil | ||
[статические]
Сравнивает два числовых значения. | ObjectUtil | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
[статические]
Сравнивает два значения строки. | ObjectUtil | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
[статические]
Печатает указанный объект методом prettyPrint в строку. | ObjectUtil | ||
Возвращает элементарное значение заданного объекта. | Object |
clone | () | метод |
public static function clone(value:Object):Object
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Клонирует указанный элемент Object и возвращает ссылку на клонированный элемент. Клонированный объект создается с помощью встроенной технологии сериализации. Это значит, что пользовательская сериализация будет учитываться при клонировании. clone() отличается от copy() тем, что свойство uid каждого объекта при этом сохраняется.
Этот метод предназначен для клонирования объектов данных, например элементов коллекции. Он не используется для клонирования объектов UIComponent, например элемента управления TextInput. При необходимости клонирования определенного объекта UIComponent следует создать подчиненный класс компонента и реализовать метод clone()
.
Параметры
value:Object — Клонируемый элемент.
|
Object — Клонированный элемент указанного элемента Object.
|
compare | () | метод |
public static function compare(a:Object, b:Object, depth:int = -1):int
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сравнивает объекты и возвращает целое число, определяющее, является ли первый элемент меньшим, большим или равным второму элементу. Этот метод рекурсивно сравнит свойства вложенных объектов и возвратит их по достижении результата, отличного от нуля. По умолчанию этот метод повторно достигнет самого глубокого уровня любого свойства. Для изменения глубины сравнения укажите неотрицательное значение параметра depth
.
Параметры
a:Object — Object.
| |
b:Object — Object.
| |
depth:int (default = -1 ) — Определяет, сколько уровней должно быть повторно пройдено при выполнении сравнения. Установите это значение на 0 для поверхностного сравнения только элементарных представлений каждого свойства. Например:var a:Object = {name:"Bob", info:[1,2,3]}; var b:Object = {name:"Alice", info:[5,6,7]}; var c:int = ObjectUtil.compare(a, b, 0); В приведенном выше примере при сравнении сложные свойства |
int — Возвращает 0, если a и b имеют значение null, NaN или equal. Возвращает 1, если a имеет значение null или большее, чем b. Возвращает -1, если b имеет значение null или большее, чем a.
|
copy | () | метод |
public static function copy(value:Object):Object
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Копирует указанный объект и возвращает ссылку на эту копию. Копирование выполняется с использованием встроенного метода сериализации. Это означает, что в процессе копирования будет учитываться пользовательская сериализация.
Этот метод разработан для копирования объектов данных, например элементов коллекции. Он не предназначен для копирования объектов UIComponent, например элементов управления TextInput. Если требуется создать копии определенных объектов UIComponent, можно создать подкласс этого компонента и реализовать метод clone()
или другой метод создания копии.
Параметры
value:Object — Копируемый объект.
|
Object — Копирование указанного объекта.
|
dateCompare | () | метод |
public static function dateCompare(a:Date, b:Date):int
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сравнивает два объекта Date и возвращает целое число, определяющее, является ли первый объект Date боле ранним, равным или более поздним по отношению ко второму элементу.
Параметры
a:Date — Объект Date.
| |
b:Date — Объект Date.
|
int — 0, если объекты a и b равны (или оба имеют значение null ); -1, если объектa является более ранним, чем объект b (или b равен null ); 1, если объект a является более поздним, чем b (или a равен null ).
|
getClassInfo | () | метод |
public static function getClassInfo(obj:Object, excludes:Array = null, options:Object = null):Object
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает информацию о классе и свойствах класса для указанного объекта.
Параметры
obj:Object — Проверяемый Object.
| |
excludes:Array (default = null ) — Массив строк, указывающий имена свойств, которые должны быть исключены из возвращаемого результата. Например, для объекта Event можно указать [currentTarget, target] , так как эти свойства могут увеличить возвращаемый результат.
| |
options:Object (default = null ) — Посредством этого метода возвращается Object, содержащий одно или более свойств, управляющих информацией. Эти свойства включают следующее:
|
Object — Каждый Object содержит следующие свойства:
|
hasMetadata | () | метод |
public static function hasMetadata(obj:Object, propName:String, metadataName:String, excludes:Array = null, options:Object = null):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Использует getClassInfo
и исследует информацию о метаданных для определения, имеют ли свойства в данном объекте указанные метаданные.
Параметры
obj:Object — Объект, содержащий свойства.
| |
propName:String — Свойство, подлежащее проверке метаданных.
| |
metadataName:String — Имена метаданных для проверки в свойстве.
| |
excludes:Array (default = null ) — Следует ли исключать какие-либо свойства при создании информации о классе. (Дополнительно)
| |
options:Object (default = null ) — Следует ли изменять флаги каких-либо параметров при создании информации о классе. (Дополнительно)
|
Boolean — Значение равно true, если свойство имеет указанные метаданные.
|
isDynamicObject | () | метод |
public static function isDynamicObject(obj:Object):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает true
, если объект является экземпляром динамического класса.
Параметры
obj:Object — Объект.
|
Boolean — true , если объект является экземпляром динамического класса.
|
isSimple | () | метод |
public static function isSimple(value:Object):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает true
, если указанная ссылка на объект относится к простому типу данных. Простые типы данных включают следующие:
String
Number
uint
int
Boolean
Date
Array
Параметры
value:Object — Анализируемый объект.
|
Boolean — true , если указанный объект относится к одному из указанных выше типов; в противном случае – false .
|
numericCompare | () | метод |
public static function numericCompare(a:Number, b:Number):int
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сравнивает два числовых значения.
Параметры
a:Number — Первое число.
| |
b:Number — Второе число.
|
int — 0, если оба числа являются NaN. 1, если только a является NaN. -1, если только b является NaN. -1, если a меньше b ; 1, если a больше b ;
|
stringCompare | () | метод |
public static function stringCompare(a:String, b:String, caseInsensitive:Boolean = false):int
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сравнивает два значения строки.
Параметры
a:String — Первое значение строки.
| |
b:String — Второе значение строки.
| |
caseInsensitive:Boolean (default = false ) — Определяет выполнение сравнения, независимое от регистра, (true ) или нет (false ).
|
int — 0, если обе строки имеют значение null. 1, если только a имеет значение null. -1, если только b имеет значение null. -1, если a предшествует b . 1, если b предшествует a .
|
toString | () | метод |
public static function toString(value:Object, namespaceURIs:Array = null, exclude:Array = null):String
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Печатает указанный объект методом prettyPrint в строку. Все свойства будут расположены в альфа-порядке. Каждому объекту при печати будет присвоен идентификатор; его значение отобразится рядом с маркером типа объекта, перед которым стоит знак «#», например:
(mx.messaging.messages::AsyncMessage)#2.
Этот идентификатор используется для указания на циклическую ссылку. Свойства объекта типа Class
появляются только в виде присвоенного типа. Например, следующее пользовательское определение:
public class MyCustomClass { public var clazz:Class; }
Со свойством clazz
, присвоенным Date
, отобразится следующим образом:
(somepackage::MyCustomClass)#0 clazz = (Date)
Параметры
value:Object — Объект, подлежащий печати методом prettyPrint.
| |
namespaceURIs:Array (default = null ) — Массив пространства имен URI для свойств, которые должны быть включены в выходные данные. По умолчанию только свойства из общего пространства имен включаются в выходные данные. Для получения всех свойств независимо от пространства имен передайте массив с единственным элементом ".
| |
exclude:Array (default = null ) — Массив имен свойств, которые должны быть исключены из выходных данных. Используйте его для удаления данных из отформатированной строки.
|
String — Строка, содержащая отформатированную версию указанного объекта.
|
Пример
Использование этого примера
// example 1 var obj:AsyncMessage = new AsyncMessage(); obj.body = []; obj.body.push(new AsyncMessage()); obj.headers["1"] = { name: "myName", num: 15.3}; obj.headers["2"] = { name: "myName", num: 15.3}; obj.headers["10"] = { name: "myName", num: 15.3}; obj.headers["11"] = { name: "myName", num: 15.3}; trace(ObjectUtil.toString(obj)); // will output to flashlog.txt (mx.messaging.messages::AsyncMessage)#0 body = (Array)#1 [0] (mx.messaging.messages::AsyncMessage)#2 body = (Object)#3 clientId = (Null) correlationId = "" destination = "" headers = (Object)#4 messageId = "378CE96A-68DB-BC1B-BCF7FFFFFFFFB525" sequenceId = (Null) sequencePosition = 0 sequenceSize = 0 timeToLive = 0 timestamp = 0 clientId = (Null) correlationId = "" destination = "" headers = (Object)#5 1 = (Object)#6 name = "myName" num = 15.3 10 = (Object)#7 name = "myName" num = 15.3 11 = (Object)#8 name = "myName" num = 15.3 2 = (Object)#9 name = "myName" num = 15.3 messageId = "1D3E6E96-AC2D-BD11-6A39FFFFFFFF517E" sequenceId = (Null) sequencePosition = 0 sequenceSize = 0 timeToLive = 0 timestamp = 0 // example 2 with circular references obj = {}; obj.prop1 = new Date(); obj.prop2 = []; obj.prop2.push(15.2); obj.prop2.push("testing"); obj.prop2.push(true); obj.prop3 = {}; obj.prop3.circular = obj; obj.prop3.deeper = new ErrorMessage(); obj.prop3.deeper.rootCause = obj.prop3.deeper; obj.prop3.deeper2 = {}; obj.prop3.deeper2.deeperStill = {}; obj.prop3.deeper2.deeperStill.yetDeeper = obj; trace(ObjectUtil.toString(obj)); // will output to flashlog.txt (Object)#0 prop1 = Tue Apr 26 13:59:17 GMT-0700 2005 prop2 = (Array)#1 [0] 15.2 [1] "testing" [2] true prop3 = (Object)#2 circular = (Object)#0 deeper = (mx.messaging.messages::ErrorMessage)#3 body = (Object)#4 clientId = (Null) code = (Null) correlationId = "" destination = "" details = (Null) headers = (Object)#5 level = (Null) message = (Null) messageId = "14039376-2BBA-0D0E-22A3FFFFFFFF140A" rootCause = (mx.messaging.messages::ErrorMessage)#3 sequenceId = (Null) sequencePosition = 0 sequenceSize = 0 timeToLive = 0 timestamp = 0 deeper2 = (Object)#6 deeperStill = (Object)#7 yetDeeper = (Object)#0 // example 3 with Dictionary var point:Point = new Point(100, 100); var point2:Point = new Point(100, 100); var obj:Dictionary = new Dictionary(); obj[point] = "point"; obj[point2] = "point2"; obj["1"] = { name: "one", num: 1}; obj["two"] = { name: "2", num: 2}; obj[3] = 3; trace(ObjectUtil.toString(obj)); // will output to flashlog.txt (flash.utils::Dictionary)#0 {(flash.geom::Point)#1 length = 141.4213562373095 x = 100 y = 100} = "point2" {(flash.geom::Point)#2 length = 141.4213562373095 x = 100 y = 100} = "point" {1} = (Object)#3 name = "one" num = 1 {3} = 3 {"two"} = (Object)#4 name = "2" num = 2
Tue Jun 12 2018, 11:34 AM Z