2011-07-10 83 views
3

如何基于ActionScript3如何将元素添加到AS3中的数组?

添加元素数组,如果我有一个数组:

var myArray:Array; 

如何添加的元素添加到阵列 “myArray的”,这样的事情:

myArray[] = value; 

我的第二个问题是:如果数组元素值中存在变量值,怎么能比较?

喜欢的东西in_array功能在PHP

+0

这大致在ActionScript中的JavaScript一样。 – BoltClock

+1

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/Array.html – Taurayi

+0

我的第二个问题是:如果数组元素值中存在变量值,如何比较? 在php – Faraona

回答

3

要在这里回答这两个你的问题,你可以通过直接访问或者通过push()方法添加到一个数组,像这样:

myArray[7] = something; 

myArray.push(something); 

另外,作为氮氧化物注意,您也可以使用拼接方法来添加元素。此方法用于删除特定索引处的N个元素,但您也可以同时在同一个索引处注入一个或多个元素。

你对如何检查值或它们放入数组比较的第二个问题,这里有一个方法:

var i:int = 0; 

for(i; i < myArray.length; ++i){ 
    if(myArray[i] == 10){ 
     trace('found'); 
    } 
} 
27

1.所有这些都是添加项目阵列的不同方式。

  • someArray.push(someValue);:添加最后一个项目
  • someArray.unshift(someValue);:添加第一个项目
  • someArray[index] = someValue;:某处
  • someArray.splice(index, 0, someValue);设置项:插入项某处

2.检查,如果值是呈现在阵列中。

if (someArray.indexOf(someValue) == -1) { /*value is not present*/ }

顺便说一句,谷歌很容易给你这些问题的答案。 Adobe公司的ActionScript language reference也是这样。

+0

对于indexOf而不是循环+1;) – Nate

+0

谢谢。全面但简短。 – Jono

+0

Nate ... indexOf .. IS循环。在indexOf内部,虚拟机正在做一个循环。它还会怎么知道物品的索引是什么?魔法? – 2014-04-11 08:51:18