AS3:如何在添加FOR循环之前检查数组中是否已存在某个值?

irn*_*nik 7 arrays loops for-loop actionscript-3

我相信这很简单,但显然不够简单:).在使用FOR循环添加值之前如何检查数组中是否已存在值的任何想法?

到目前为止我有这个,它不能正常工作,因为数组可以包含重复的值!

            var n:int = 5;
        var cnt:int;
        for (var i = 0; i < n; i++)
        {
            cnt = randomThief();

            for (var a = 0; a < loto5.length; a++)
            {
                if (loto5[i] == cnt)
                {
                    loto5[i] = cnt;
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

pro*_*cal 17

您可以使用indexOf()Array类的方法来检查值是否存在,如下所示:

var index:int = loto5.indexOf(cnt);
Run Code Online (Sandbox Code Playgroud)

indexOf()如果该值不存在,则返回-1.以下是如何进行检查的示例:

if (loto5.indexOf(cnt) >= 0)
{
   // do something
}
Run Code Online (Sandbox Code Playgroud)