При использовании ObjectUtil существует метод, называемый toString(), который принимает объект. Если вы передадите ему класс с именем «Person», он вернет строку «[class Person]».Есть ли у Flash метод, который делает обратную ссылку toString?
var person:Person = new Person();
trace(ObjectUtil.toString(person));//UPDATE I'm not using ObjectUtil.toString()
// traces [class Person]
Есть ли способ toObject()? То, что происходит в таком же формате ToString выходов и создает экземпляр так:
var person:Person = ObjectUtil.toObject("[class Person]");
UPDATE:
Извините. Это неверно. Я думал, что использую ObjectUtil.toString(). Я не был. Когда я использую этот метод возвращает что-то вроде:
(com.printui.assets.skins::fontList)#0
accessibilityDescription = ""
accessibilityEnabled = true
accessibilityImplementation = (null)
В моем коде где-то возвращается «[класс Person]», как я описал. Это линия:
var currentValue:* = target[property];
popUpValueInput.text = currentValue;
Я думал, что с помощью instance.toString(), но ToString() это что-то близкое к тому, что не возвращаются:
var f:fontList = new fontList();
var f1:fontList = new fontList();
trace("" + f);
trace("" + f1);
trace(f1.toString());
Результаты в:
fontList2
fontList5
fontList5
Ну , есть [getDefinitionByName] (http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/package.html#getDefinitionByName()), который возвращает объект указанного класса. В вашем случае 'var person: Person = getDefinitionByName (« Person »)', если имя класса неоднозначно, вы также можете использовать идентификатор типа 'getDefinitionByName (« com.example.Person »)'. – DodgerThud
Хмм, что вы используете для ObjectUtils? Google говорит, что существует 'mx.utils.ObjectUtil' (отсутствует" s ") и' org.as3commons.lang.ObjectUtils' (этому не хватает метода statis 'toString()'). У последнего есть метод toInstance() ', который делает экземпляр данного класса из' Object', но не из строки. Вам лучше посмотреть на процесс сериализации, чтобы хранить объекты в виде строк/байтов. – Vesper
Кроме того, в вашем случае ваша трассировка должна быть '[Object Person]', поскольку вы подаете ей экземпляр, а не описание cass. Может быть, почта, где вы получили это «ObjectUtils», полное имя класса и/или код. – Vesper