JavaScript查找数组是否存在指定元素

人盡茶涼 提交于 2019-12-10 17:55:24

在新版本的浏览器中,数组存在indexOf方法,可以直接返回元素在数组的索引。

可以使用jQuery的jQuery.inArray()方法。

以下代码兼容了旧的浏览器。

//在数组array中搜索指定的值value,并返回此索引,如果不存在,返回-1
function inArray(value, array, fromIndex) {
	var d;
	var indexOf = [].indexOf;
	if (array) {
		if (!indexOf){
			return indexOf.call(array, value, fromIndex);
		}
		for (d = array.length, fromIndex = fromIndex ? 0 > fromIndex ? Math.max(0, d + fromIndex) : fromIndex : 0; d > fromIndex; fromIndex++) {
			if (fromIndex in array && array[fromIndex] === value) {
				return fromIndex;
            }
        }
	}
	return -1;
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!