Flash AS语言 数组中添加一个数

Flash AS语言 数组中添加一个数,第1张

两种方法,一种不改变原数组,返回原数组

function

arrayPushAt(obj:*,

index:uint,

arr:Array):Array

{

var

new_arr:Array

=

arr.slice(0,

index)

new_arr.push(obj,

arr.slice(index,

arr.length))

return

new_arr

}

另一种在原数组中添加

function

pushAt(obj:*,

index:uint,

arr:Array):void

{

var

len:int

=

arr.push(arr[arr.length])

for

(var

i:uint

=

len

-

1

i

>

index

i--)

{

arr[i]

=

arr[i

-

1]

}

arr[index]

=

obj

}

参数说明(两个方法一样)

obj:需要添加的值

index:需要添加的位置

arr:需要添加到的数组

其中,需要添加的位置可以使用

Array.indexOf(*)来检测,比如LZ的例子,来检测1后面的位置

Array.indexOf(1)//此时得到的值是0

PS:Array是数组变量名

则添加的位置就是0+1=1了

先看数据:

多用了一种方法 

只进行了3次测试

push 方法 平均197毫秒左右

length 方法 平局 178毫秒左右 比push快了 大概10%

第三种方法 平均 125毫秒左右 比length快了 越30%

原因:

push 要执行类的方法,

lenth 要计算 类的长度

测试数据用的比较单一..有可能不准确,可以自己测试下~~

什么时候用()?:必须用new Array创建实例时用到(),有两种情况:(标准)一是创建时就有元素:var a:Array=new Array("“工”","d ",3)二是创建时没有元素,空数组:var a:Array=new Array()什么时候用[]?:是简化的创建数组的方法,(简写)

如b=[]就是创建了一个空的数组

再如:b=[1,2,4,7,9],创建一个有初始元素的数组

另外,可用于清空数组:b=[]

一个标准写法,一个是简化写法。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11360797.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存