如何检查数组是否包含指定项

How can I check if an array contains a specified item?

本文关键字:是否 包含指 数组 何检查 检查      更新时间:2023-09-26

我的应用程序使用jQuery,并且我有一个包含字符串项的数组:

var array = ["item","item1","item2","item3"]

如何测试数组是否包含"项"?

您可以使用array.indexOf("item")-如果找不到项或找不到该项的索引,它将返回-1

请注意,旧版本的IE不支持此功能。

if ($.inArray("item", array) > -1)

Javascript

现代浏览器有Array#indexOf,它正是这样做的;这是ECMAScript v5版本规范中的内容,但它已经在几个浏览器中存在多年了。使用该页面底部"兼容性"部分中列出的代码可以支持较旧的浏览器。

if(array.indexOf("item") > -1){
    //doSomething
}

jQuery

jQuery对此有一个实用函数:

if($.inArray(value, array)){
    //doSomething
}

它返回数组中某个值的索引。如果数组不包含该值,则返回-1。

重复

  • 查找项目是否在JavaScript数组中的最佳方法
  • 如何检查数组是否包含JavaScript中的对象