flash 脚码j=parseInt(8*Math.random());类型不匹配,哪位大侠能解决一下啊?

王朝知道·作者佚名  2009-07-30
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 軟件 >> 多媒體軟件
 
問題描述:

var listx = Array(10, 11, 21, 31, 41, 51, 61, 71);

var i, j, x;

for(i=0; i<8; i++){

j=parseInt(8*Math.random());

x=listx[i];

listx[i]=listx[j];

listx[j]=x;

}

trace(listx);

语法检测出现:**错误** 场景=场景 1, 图层=图层 1, 帧=1:第 4 行: 类型不匹配。

j=parseInt(8*Math.random());

动作脚本错误总数:1 报错:1

哪位大侠能帮小弟解决一下``先谢谢了`

參考答案:

类型不匹配,parselnt函数后面的参数必须是字符串,而8*Math.random()得出的将会是一个数字而不是字符串,所以类型不匹配,有两个解决方法:

1.给 8*Math.random() 加上双引号变成字符串: "8*Math.random()";

2.不用parselnt函数,将 j=parseInt(8*Math.random()) 改为

j=8*Math.random();

这样就可以了,从脚本上来看,你是需要取得随机数,所以应该用第二种方法。

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航