数组 – AS3:使用for循环一次删除数组中的每个元素
发布时间:2020-12-15 07:26:27 所属栏目:百科 来源:网络整理
导读:编辑:以下每个答案都在工作,感谢您的帮助! 我目前正在学习如何在as3中拼接数组. 所以这是我的代码: //import classesimport flash.utils.Timer;import flash.events.*;//variablesvar Arr:Array=new Array();var num:Number=0;//set a timer and set time
编辑:以下每个答案都在工作,感谢您的帮助!
我目前正在学习如何在as3中拼接数组. //import classes import flash.utils.Timer; import flash.events.*; //variables var Arr:Array=new Array(); var num:Number=0; //set a timer and set timer limit of 10 times var timer:Timer=new Timer(1000,10); //add a listener to our timer object timer.addEventListener(TimerEvent.TIMER,tick); timer.addEventListener(TimerEvent.TIMER_COMPLETE,tock); //tick function function tick(e:TimerEvent):void{ //i add an element each time the timer 'ticks' Arr.push(['index'+num]); num++; } //tock function function tock(e:TimerEvent):void{ trace('array elements :'+Arr);//traces Arr elemnts for(var i:int=0;i<Arr.length;i++){ Arr.splice(i,1);// i've tried Arr.splice(0,1),but neither working trace('elemnts left : '+Arr); } 我真的不明白这个问题,但结果如下: 1.并未删除Arr数组中的每个元素 有人对此有所了解吗? 解决方法
有更简单和更快的选择:
您可以将Array的长度设置为0.这将有效地立即删除其所有元素. Arr.length = 0; 您可以创建Array类的新空实例.这不会立即销毁原始对象,但如果没有对它的引用,它最终将由垃圾收集器使用,因此您不需要考虑它. // You can omit () with the "new" operator if there are no mandatory arguments. Arr = new Array; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |