apache-flex - FLEX XMLDecoder 将 `09.00` 变为 "09.00",但将 `10.00` 变为 10

标签 apache-flex actionscript-3

有人可以解释为什么 FLEX 4.5 XMLDecoder 对我的 XML 数据这样做吗?

var decoder:XMLDecoder = new XMLDecoder;
var $object:Object = decoder.decode( <xmltag>08.00</xmltag> );
// object = "08.00"

var decoder:XMLDecoder = new XMLDecoder;
var $object:Object = decoder.decode( <xmltag>11.00</xmltag> );
// Object = "11" (HEY! Where did my '.00' part of the string go?)

var decoder:XMLDecoder = new XMLDecoder;
var $object:Object = decoder.decode( <xmltag>11.30</xmltag> );
// Object = "11.3" (HEY! Where did my '0' part of the string go?)

最佳答案

Flex 解串器也给我带来了问题。它可能会将它们解释为 Number 对象,因此在调用 toString() 时它们将返回简短表示。

每当您需要打印诸如 11.00 的值时,请尝试使用 .toFixed(2)

var $object:Object = decoder.decode( <xmltag>11.00</xmltag> );
trace($object); //11
trace($object.toFixed(2)); //11.00

关于apache-flex - FLEX XMLDecoder 将 `09.00` 变为 "09.00",但将 `10.00` 变为 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6192347/

相关文章:

apache-flex - FlashVars 或外部接口(interface)

java - 同时在同一个基于 Flex 的 App Engine 应用程序的 5 个版本中打开 1 个文件?

java - 使用 Weborb for Java 和 Flex 进行开发的典型开发工作流程/过程是什么?

apache-flex - 在 Function 中访问 savedThis 属性

actionscript-3 - AS3 文本输入重音

java - Flex 和 Java 之间的 RemoteClass 问题

Flash/Flex 跨域问题 - 对来自 AWS S3 的图像使用 BitmapData.draw() 会导致 SecurityError : Error #2122: Security sandbox violation

actionscript-3 - 帧平滑代码

flash - NetStream 仅在完全加载时播放

actionscript-3 - AS3 : Resizing a sprite without resizing its BitmapFill (or its contents for that matter)?