访问数组一个值得注意的隐患

      Flash 2004-10-12 15:58


今天做flash时,发现一个bug,搞了半天没想通为什么

首先,我在确定是访问数组出问题后,就到处看和此数组相关系的变量等有什么逻辑错误,找了半天发现没有逻辑错误,我就纳闷了,直到突然看到这句代码

sn = temp.pop()-1;
return pointPose[sn];

我相temp.pop();可能在temp为空是返回一个undefined,而undefined再 -1 那么就是NaN

我测试了一下,发现果然pointPose[NaN]可以返回pointPose[0]的值,也就是说NaN在此处可以当0使用...

汗,这是个多么让人讨厌的隐患,虽然记得以前看过NaN的介绍,不过使用起来碰到的也比较少,考虑的时候往往会忽略了这一点...这次正好碰到,把自己的教训拿出来给大家一个提醒^^"
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}