findIndex 方法 (Array)

返回满足回调函数中指定的测试条件的第一个数组元素的索引值。

语法

arrayObj.findIndex(callbackfn [, thisArg]);

参数

arrayObj

必要参数。数组对象。

callbackfn

必要参数。用于测试数组中的每个元素的回调函数。

thisArg

可选参数。指定回调函数中的this对象。如果未指定,则this对象是undefined。

备注

对于数组中的每个元素,findIndex方法都会调用一次回调函数(采用升序索引顺序),直到元素返回true。只要有一个元素返回true,findIndex立即返回true的元素的索引值。如果数组中没有任何元素返回true,则findIndex返回-1。

findIndex不会改变数组对象。

回调函数语法

回调函数的语法如下所示:

function callbackfn(value, index, thisArg)

你可以使用最多三个参数来回调函数。

回调函数的参数如下所示。

回调函数参数定义
value数组元素的值。
index数组元素的数字索引。
arrayObj要遍历的数组对象。

示例

在下面的示例中,回调函数测试数组中的每个元素是否都等于2。

[1,2,3].findIndex(function(x) { x == 2; });
// Returns an index value of 1.

示例

下面的示例使用箭头语法来测试每个元素。在此示例中,没有任何元素返回truefindIndex返回-1。

[1,2,3].findIndex(x => x == 4);
// Returns an index value of -1.

必备条件

Microsoft Edge中受支持。应用商店应用(Windows 10 上的 Microsoft Edge)中也受支持。请参阅版本信息

在以下文档模式中不受支持:怪异模式、Internet Explorer 6 标准模式、Internet Explorer 7 标准模式、Internet Explorer 8 标准模式、Internet Explorer 9 标准模式、Internet Explorer 10 标准模式和 Internet Explorer 11 标准模式。在 Windows 8.1 中不受支持。

如果你喜欢这篇文章,敬请给站长打赏↑

除特别注明外,本站所有文章均为本站站长原译,转载请注明出处。