javascript - 为什么这个js数组函数不起作用?

标签 javascript arrays

我正在使用 jQuery 库,并尝试将项目推送到数组:

< onclick ="setFacet('myarray','val');">AOC

var myarray = [];

function setFacet(arr, bb) {
    for (var i=0; i< arr.length; i++)
        if (arr[i] == bb) 
            return true;

    arr.push(bb);
    return false;
}

我在 Chrome 中得到了这个:

对象 myarray 没有方法“push”

最佳答案

哦,我想我发现了这个问题。在 onclick 中,您使用两个字符串调用该函数。第一个参数应该是一个数组而不是'myarray'

如果你只是去掉引号(并且如果myArray在全局范围内)它应该可以工作。也就是说,让它看起来像这样:

onclick="setFacet(myArray, 'val')"

关于javascript - 为什么这个js数组函数不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8889608/

相关文章:

javascript - 分段按钮 OpenUI5 setSelectedButton

arrays - 如何将 byte slice 段 (&[u8]) 的缓冲区转换为整数?

java - 动态绘制立方体的问题

javascript - 在迭代两个嵌套循环时提高性能

javascript - 有关分屏书签的帮助

javascript - 如何使用 d3.csv 区分第一行中的相同键

javascript - html download 属性重定向到 url 而不是下载

javascript - div 位置参数会破坏 slider

arrays - 在二维数组中查找最大值

python - 使用 bool 索引数组过滤列表