我有我正在测试的代码:
var test:String="Hello there; im zane"
var parts:Array=test.split(";");
trace(parts)
trace(parts[0])
var randomnum:Number=0;
stage.addEventListener(Event.ENTER_FRAME, code)
function code(c:Event):void{
if(parts[randomnum] != undefined && parts[randomnum] != null){
parts[randomnum]=parts[randomnum].split(" ");
randomnum+=1
trace(parts[randomnum])
}
else{
randomnum=0
}
}
此parts[randomnum]=parts[randomnum].split(" ");
出错。 Flash说分裂不是一个功能(
TypeError:错误#1006:split不是函数。 在Untitled_fla :: MainTimeline / code()
)
在这个项目的早期,我使用了split函数和变量的不同部分,我也尝试了parts[0]=parts[0].split(" ")
,并且它运行良好。
我试图找出的是,为什么拆分命令在这种情况下不起作用?我做错了吗?
答案 0 :(得分:1)
我也尝试了
parts[0]=parts[0].split(" ")
这个事件并且工作正常。
即使在事件之外,这一行也没有多大意义,因为它将split()
的返回值赋给调用该方法的同一个变量。当ENTER_FRAME
被重复执行时,此会在第二次失败时失败,因为split()
会返回一个Array
,而这个方法本身就没有,这就是错误基本上是在说。