Javascript 懒惰可枚举

问题描述

有什么方法可以将常规数组转换为懒惰的可枚举

我希望下面的代码生成一个日志,而不是十个:

const items = [0,1,2,3,4,5,6,7,8,9];


items.map((i) => {
    console.log('expensive process');
    return i;
})
.findindex((i) => true);

解决方法

您可以使用 Array.find 方法在找到正确的元素后立即停止。

const items = [0,1,2,3,4,5,6,7,8,9];


items.find((i) => {
    if(i){
        console.log('expensive process');
    }
    
    return i;
});