jQuery inArray()不工作?它找不到我确信在数组中的字符串
jQuery inArray() not working? It's not finding strings that I'm sure are in the array
我有一个像这样的数组对象:
var wordList = new Array();
$.get('words.txt', function(data){
wordList = data.split(''n');
});
当我这样做时:
return jQuery.inArray(word, wordList)!==-1;
使用我//知道//在数组中的单词,它仍然返回false。它可能是数组太大(它包含173,139个字符串)-这是它吗?在这种情况下,我应该放弃使用数组,还是有其他方法来搜索数组?
我检查了单词的类型和数组中的元素-根据JavaScript的typeof
,它们都是字符串。
什么是奇怪的是,我已经使用inArray与相同的单词和不同的数组,它工作得很好-不同的是数组生成的方式(一个是通过相同的输入我得到word
,一个是通过分割行在一个。txt文件)。
另外,当我尝试通过索引显式调用元素时,它会显示出来,因此我确定数组正在加载。我也用了高指数;调用wordList[173138]不会使响应时间变慢。
为什么inArray()不在这里工作?
我最初把它放在评论中,但被告知要把它作为一个答案-这应该更容易找到。对于像这样在数组循环中遇到麻烦的人,检查一下你分割数组的方式,如果它是由换行符分割的——我的数组造成了一些麻烦,因为我在应该使用data.split(''r'n')
的地方使用了data.split(''n')
。修复后,一切都很好。
相关文章:
- 为什么当我在数组上测试regex时,它会返回false
- 如何将数字切成更小的数字以适合我的数组
- jQuery.hide()不适用于我的数组
- 为什么这个 fs.readFile 循环没有将其结果推送到我的数组
- 获取我的数组中的每个 ID 映像 src
- 为什么我得到数组如何获取字符串
- 我想重新排列我的数组和其他数组一样,这个数组是键和值
- 如何从..中提取信息..我称之为数组
- 无法将所有位置值保存到我的数组中
- 为什么我的数组长度没有增加
- 如果他们不这样做,就从我的数组中删除东西't没有前缀
- 为什么我的jQuery.map不能在这里组合我的数组
- 是php json_encode&AJAX破坏了我的数组
- 用JsFiddle更新:当我获取数组的平均函数时,打开NaN
- 我们可以发送数据到控制器,直到我的数组变空
- 为什么我的数组没有按照将对象推入数组的方式排序
- 将一个元素附加到我的数组中
- 我的数组中的每个元素都被最后一个元素推入覆盖
- 如何在桌面上打印我的数组并替换为排序数组
- 为什么我的数组无法使用 innerhtml