JS遍历数组时不额外存储如何获取符合条件的最小索引
问题结论
该需求完全可以实现,你确实想复杂了,实现逻辑非常简单,不需要额外数组存储索引,也不需要预先设置初始最小值。
实现逻辑
你的遍历本身就是从索引0开始按从小到大的顺序执行的,第一个命中判断条件的索引天然就是所有符合条件索引中的最小值,找到后直接终止遍历即可,不需要继续检查后续元素。
示例代码
arr = [[3, 3], [3, 4], [3, 5], [3, 6]] for(let i = 0; i < arr.length; i++){ if (arr[i][0] === 3 && arr[i][1] === 4 || arr[i][0] === 3 && arr[i][1] === 5){ console.log(i) // 这里输出的第一个值就是最小索引1 break // 直接终止遍历,不需要继续执行后续循环 } }
补充说明
如果遍历完整个数组都没有触发break,说明不存在符合条件的元素,你可以根据场景需求处理这种边界情况即可。
内容的提问来源于stack exchange,提问作者AttemptedMastery
相关产品推荐
相关产品推荐

