2026-10-22 07:20:08
在 JavaScript 中,可以使用 Array.prototype.keys() 方法获取数组索引的迭代器。该方法返回一个包含数组每个索引键的迭代器对象,可通过 for...of 循环或手动调用 next() 方法遍历索引。以下是具体用法及扩展场景:
1. 基础用法:遍历索引使用 Array.from() 将迭代器转换为普通数组,便于进一步操作:
const arr = ['a', 'b', 'c'];const keysArray = Array.from(arr.keys());console.log(keysArray); // 输出: [0, 1, 2]3. 结合其他数组方法实现复杂操作arr.keys() 返回迭代器,无需立即创建完整数组,内存效率较高。
适用于小到中等规模数组的索引遍历。
大规模数据或高频操作时,传统循环(如 for 循环)可能更高效。
// 传统循环示例(性能更优于迭代器)const largeArr = new Array(1000000).fill(0);for (let i = 0; i < largeArr.length; i++) { // 直接操作索引 i}需要遍历索引而非元素本身。
需将索引集合转换为数组(如 Array.from(arr.keys()))。
与其他数组方法组合使用(如筛选、映射)。
若需直接获取索引数组,Array.from(arr.keys()) 比手动循环更简洁。
若仅需遍历索引,for...of 或传统循环更直观。