在AS3.0中,Number类型的变量不能为NULL。为什么会这样?为什么未定义的变量被分隔为包含名为NaN(不是数字)的东西?
答案 0 :(得分:4)
我想这是因为你可以对Number进行许多计算,并且他们想让它看起来与null不同(未定义的值仍然可能是btw),例如0/0给出了NaN。
NaN无法与任何值进行比较:它给出了错误。 如果你用NaN计算东西,你会得到NaN:这意味着如果你有'错误的输入',计算结果是:'输入错误'而不是由数字的动态评估产生的神奇东西(例如香草价值为int为0,因此int上的计算可以给出结果)。所以NaN有意义。
以下是一篇关于ActionScript 3中使用NaN的精彩文章:http://jacksondunstan.com/articles/151