在JavaScript中,当数组中的元素是对象时,获取对象在数组中的index,可以使用findIndex方法。例如,原数据为:const array = [{id:1, name:'张xx'}, {id:2, name:'王xx'}]。方法为:const index = array.findIndex(function(val){return val.id === 1});如果数组中有多个对象满足条件,findIndex方法只会返回第一个满足条件的对象的index。因此,console.log(index)的结果为0。
另一种方法是使用数组的indexOf()方法。该方法适用于查找数组中某个值的索引位置。例如,var arr = [10, 20, 30, 40, 50, 20, 56, 34, 20];若要查找某个元素是否在数组中,可以使用数组名.includes(元素),返回值为布尔值。查找某个元素第一次出现在数组中的下标,可以使用数组名.indexOf(),返回值为数组的下标;若不在数组中,则返回-1。
示例:var ret = arr.indexOf(20);此代码会返回20在数组中的第一个出现位置,即2。而var ret1 = arr.indexOf(20, 5);此代码则会从索引5开始查找20,返回值为6,即20在数组中的第二个出现位置。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。