❮ JavaScript 数组方法
JavaScript 数组排序 ❯
JavaScript 数组搜索
数组搜索方法
Array indexOf()
Array lastIndexOf()
Array includes()
Array find()
Array findIndex()
Array findLast()
Array findLastIndex()
完整的 JavaScript 数组参考
另请参阅:
JavaScript 数组教程
JavaScript 基本数组方法
JavaScript 数组排序方法
JavaScript 数组迭代方法
JavaScript 数组参考
JavaScript 数组 indexOf()
indexOf() 方法用于在数组中查找元素值并返回其位置。
注意: 第一个元素的位置为 0,第二个元素的位置为 1,依此类推。
示例
在数组中查找元素"Apple":
const fruits = ["Apple", "Orange", "Apple", "Mango"];
let position = fruits.indexOf("Apple") + 1;
亲自试一试 »
语法
array.indexOf(item, start)
item
必填项。要查找的项目。
start
可选。搜索起始位置。负值将从指定位置开始,从末尾计数,搜索到末尾。
Array.indexOf() 如果找不到该项,则返回 -1。
如果该项出现多次,则返回第一次出现的位置。
JavaScript 数组 lastIndexOf()
Array.lastIndexOf() 与 Array.indexOf() 相同,但返回指定元素最后一次出现的位置。
示例
在数组中查找元素"Apple":
const fruits = ["Apple", "Orange", "Apple", "Mango"];
let position = fruits.lastIndexOf("Apple") + 1;
亲自试一试 »
语法
array.lastIndexOf(item, start)
item
必填。要查找的项目。
start
可选。搜索的起始位置。负值将从指定位置开始,从末尾计数,并搜索到开头。
JavaScript 数组 includes() 方法
ECMAScript 2016 为数组引入了 Array.includes() 方法。这允许我们检查某个元素是否存在于数组中(包括 NaN,这与 indexOf 不同)。
示例
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.includes("Mango"); // is true
亲自试一试 »
语法
array.includes(search-item)
Array.includes() 允许检查 NaN 值。这与 Array.indexOf() 不同。
浏览器支持
includes() 是 ECMAScript 2016 的一项特性。
自 2017 年 3 月起,所有现代浏览器均完全支持 ES 2016。
Chrome52
Edge15
Firefox52
Safari10.1
Opera39
2016年7月
2017年4月
2017年3月
2017年5月
2016年8月
JavaScript 数组 find()
find() 方法返回数组中第一个通过测试函数的元素的值。
以下示例查找(返回)第一个大于 18 的元素:
示例
const numbers = [4, 9, 16, 25, 29];
let first =
numbers.find(myFunction);function myFunction(value, index, array) { return
value > 18;}
亲自试一试 »
请注意,该函数接受 3 个参数:
元素值
元素索引
数组本身
浏览器支持
find() 是 ES6 特性。
自 2017 年 6 月起,所有现代浏览器均已完全支持 ES6。
Chrome51
Edge15
Firefox54
Safari10
Opera38
2016年5月
2017年4月
2017年6月
2016年9月
2016年6月
JavaScript 数组 findIndex()
findIndex() 方法返回数组中第一个通过测试函数的元素的索引。
以下示例查找第一个大于 18 的元素的索引:
示例
const numbers = [4, 9, 16, 25, 29];
let first =
numbers.findIndex(myFunction);function myFunction(value, index, array) {
return
value > 18;}
亲自试一试 »
请注意,该函数接受 3 个参数:
元素值
元素索引
数组本身
浏览器支持
findIndex() 是 ES6 特性。
自 2017 年 6 月起,所有现代浏览器均已完全支持 ES6。
Chrome51
Edge15
Firefox54
Safari10
Opera38
2016年5月
2017年4月
2017年6月
2016年9月
2016年6月
JavaScript 数组 findLast() 方法
ES2023 新增了 findLast() 方法,该方法从数组末尾开始查找,并返回第一个满足条件的元素的值。
示例
const temp = [27, 28, 30, 40, 42, 35, 30];
let high = temp.findLast(x => x > 40);
亲自试一试 »
浏览器支持
findLast() 是 ES2023 的一项特性。
自 2023 年 7 月起,所有现代浏览器均支持 JavaScript 2023。
Chrome110
Edge110
Firefox115
Safari16.4
Opera96
2023年2月
2023年2月
2023年7月
2023年3月
2023年5月
JavaScript 数组 findLastIndex() 方法
findLastIndex() 方法用于查找满足条件的最后一个元素的索引。
示例
const temp = [27, 28, 30, 40, 42, 35, 30];
let pos = temp.findLastIndex(x => x > 40);
亲自试一试 »
浏览器支持
findLastIndex() 是 ES2023 的一项特性。
自 2023 年 7 月起,所有现代浏览器均支持 JavaScript 2023。
Chrome110
Edge110
Firefox115
Safari16.4
Opera96
2023年2月
2023年2月
2023年7月
2023年3月
2023年5月
完整的 JavaScript 参考
如需查看包含完整描述和大量示例的 JavaScript 属性和方法的完整参考,请访问:
W3Schools 的完整 JavaScript 参考。
该参考包含 1999 年至 2025 年的所有 JavaScript 更新。
❮ JavaScript 数组方法
JavaScript 数组排序 ❯