Actionscript 创建一个测试数组是否包含内容的函数

Actionscript 创建一个测试数组是否包含内容的函数,actionscript,actionscript-2,Actionscript,Actionscript 2,当openList包含2,3时,此代码返回false。当我添加TracarrayData[I]时,我得到1,12,34,5,当我添加traceinput时,我得到2,3。怎么了?谢谢您正在使用相等运算符比较两个阵列: arrayData[i]==输入 无论数组的内容如何,这都将始终为false。在您的案例中,equal运算符测试arraydata[i]是否是具有输入的同一对象,而不是两个不同的对象数组是否具有相同的内容。ok,我应该使用什么来代替?我尝试了===但也给出了false。如果数组必须

当openList包含2,3时,此代码返回false。当我添加TracarrayData[I]时,我得到1,12,34,5,当我添加traceinput时,我得到2,3。怎么了?谢谢

您正在使用相等运算符比较两个阵列:

arrayData[i]==输入


无论数组的内容如何,这都将始终为false。在您的案例中,equal运算符测试arraydata[i]是否是具有输入的同一对象,而不是两个不同的对象数组是否具有相同的内容。

ok,我应该使用什么来代替?我尝试了===但也给出了false。如果数组必须具有相同顺序的相同元素,最简单的方法是array1。toString==array2.toString GIF顺序并不重要,数组应该只具有相同顺序的元素。您可能需要为此编写自定义函数
openList = Array([1,1], [2,3], [4,5]);
containss = function (input, arrayData, tellID) {
    for (i = 0; i < arrayData.length; i++) {
        if (arrayData[i] == input) {
            if (tellID) {
                return i;
            } else {
                return true;
            }
        }
    }
    return false;
}
trace(containss([2,3], openList, true));