关于javascript:JS循环汇总

const arr = [1, 2, 3];

// for循环: 可能应用break, continue, return管制循环; 通过下标间接拜访元素
for (let index = 0; index < arr.length; index++) {
    const element = arr[index];
    console.log(element);
}

// forEach: 不能应用break, continue管制循环(函数的本意就是要遍历每个元素), 然而能够应用return成果相当于continue(不倡议在该函数中应用)
arr.forEach((value, index) => {
    if (value == 2) {
        return false;
    }
    // console.log(value);
});

// for-in: 最好用于遍历对象, 反对break和continue, return终止循环
for (const key in arr) {
    if (arr.hasOwnProperty(key)) {
        const element = arr[key];
        // if(element === 2){
            // break;
        // }
        console.log(element);
    }
}

// for-of: 专门为数组设计的遍历办法,间接遍历其属性,反对break和continue, return终止循环
// 也能够遍历具备Symbol.iterator接口的任何数据结构
for (const item of arr) {
    if(item === 2){
        continue;
    }
    // console.log(item);
}

const iterator = arr[Symbol.iterator]();
while(true){
    const next = iterator.next();
    if(next.done){
        break;
    }
    // console.log(next.value);
}

// every: 变相遍历数组
arr.every((value, index) => {
    // console.log(index, value);
    return true; // 返回真值持续下次循环等同于continue,返回假值完结循环等同于break
});

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理