Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 调试器中是否有Actionscript整数?_Flash_Apache Flex_Actionscript 3 - Fatal编程技术网

Flash 调试器中是否有Actionscript整数?

Flash 调试器中是否有Actionscript整数?,flash,apache-flex,actionscript-3,Flash,Apache Flex,Actionscript 3,我在Flex中偶然发现了一个奇怪的东西。我创建了一个整数变量: var foo:int = 1; 在调试器中,它说foo是一个值为1的数字 这对我来说并不是什么大问题,但在进行远程服务调用时,似乎发送的是数字而不是整数。这里发生了什么?我认为输出尽可能原始-下面是一个有趣的例子: var i:int = 1; var mc:MovieClip = new MovieClip(); trace(typeof(i)); // number trace(typeof(mc)); // object

我在Flex中偶然发现了一个奇怪的东西。我创建了一个整数变量:

var foo:int = 1;
在调试器中,它说foo是一个值为1的数字


这对我来说并不是什么大问题,但在进行远程服务调用时,似乎发送的是数字而不是整数。这里发生了什么?

我认为输出尽可能原始-下面是一个有趣的例子:

var i:int = 1;
var mc:MovieClip = new MovieClip();

trace(typeof(i)); // number
trace(typeof(mc)); // object
做了一些研究:typeof只能返回以下六个结果:

Array -> object
Boolean -> boolean
Function -> function
int -> number
Number -> number
Object -> object
String -> string
uint -> number
XML -> xml
XMLList -> xml
对表达式求值并返回 指定表达式的 数据类型。结果仅限于 六个可能的字符串值:布尔值, 函数、数字、对象、字符串和 如果将此运算符应用于 用户定义类的实例 结果是字符串对象 操作员的类型包括: 向后兼容性。使用is 运算符以检查类型兼容性。“


我发现了一篇关于int vs Number的有趣帖子:。鉴于此,int也是一个对象:发生的情况是,调试器将int转换为Number并显示其值,可能只是因为Number是一个更广泛的类型,可以保存所有int,而反过来则不正确。

我不知道这是为什么,但这真的是一个问题吗?你永远不会发送任何东西,除了一个整数,这意味着永远不会有小数。也许这不是一个大问题,但在某个特定的项目,这是为我。我正在将AMF中的参数发送到AMF Zend服务器。由于这种类型,我不知道参数是int还是float。无论如何,我可以转换它,这不是一个问题,但我真的很感兴趣为什么会发生这种情况。我要提醒你,链接的文章已经有6年的历史了。在那个时候,关于何时使用什么数据类型的最佳实践,情况发生了很大变化。此外,如果您阅读文档,数字也是一个对象。所有的prim都是对象。在你指责之前,我会敦促你阅读:我说“我发现了一篇有趣的帖子”,这并不意味着“这是我的明确答案”,我说“int也是一个对象”,这并不意味着“数字不是对象”,相反,它表明数字是一个对象。我仍然认为我的帖子能帮上忙,即使它没有给出解决方案,你的评论也很有反效果。这里没有指责,当然我不是那个投反对票的人。