欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js中斷 forEach 循環(huán)的方法匯總

 更新時間:2023年10月10日 11:09:55   作者:憂郁的蛋~  
這篇文章主要介紹了js中斷 forEach 循環(huán)的幾種方法,主要方法還是通過其它方式代替 forEach 循環(huán)的中斷,只有方法4 使用 try-catch 結(jié)構(gòu)是實際意義上中斷 forEach 循環(huán),需要的朋友可以參考下

1、使用 Array.prototype.some() 方法代替

some() 方法會在找到第一個符合條件的元素時停止循環(huán)。

例如:

let array = [1, 2, 3, 4, 5];
array.some(function(element, index, array) {
    if (element === 3) {
        console.log("Found 3 at index " + index);
        return true;
    }
});

上述代碼會在找到第一個符合條件的元素(即 3)時停止循環(huán)。

2、使用 Array.prototype.every() 方法代替

let array = [1, 2, 3, 4, 5];
let stop = array.every(function(element) {
    console.log(element);
    if (element === 3) {
        console.log("Found 3 at index ");
        return false;
    }
    return true;
});

上述代碼會在找到第一個符合條件的元素(即 3)時停止循環(huán)。

請注意,該方法找到的元素不會返回,需要在回調(diào)中自己處理。

3、使用 for循環(huán)代替

let array = [1, 2, 3, 4, 5];
for(let i = 0; i < array.length; i++) {
    if (array[i] === 3) {
        console.log("Found 3 at index " + i);
        break;
    }
}

上述代碼也會在找到第一個符合條件的元素(即 3)時停止循環(huán)。

4、使用 try-catch 結(jié)構(gòu)

可以在 forEach 循環(huán)內(nèi)部使用 throw 語句來中斷循環(huán),并在外部使用 catch 語句來捕獲該異常。

例如:

let array = [1, 2, 3, 4, 5];
try {
    array.forEach(function(element, index, array) {
        if (element === 3) {
            console.log("Found 3 at index " + index);
            throw "StopIteration";
        }
    });
} catch (e) {
    if (e !== "StopIteration") throw e;
}

上述代碼會在找到第一個符合條件的元素(即 3)時停止循環(huán)。

請注意,使用 throw 語句中斷 forEach 循環(huán)可能會使代碼變得更加復雜,并且容易出現(xiàn)錯誤。因此,如果可能的話,應該使用前面提到的 Array.prototype.some() 或 for 循環(huán)來代替。

5、使用自定義的迭代器函數(shù)

let array = [1, 2, 3, 4, 5];
function forEach(array, callback) {
    for (let i = 0; i < array.length; i++) {
        callback(array[i], i, array);
        if (array[i] === 3) {
            console.log("Found 3 at index " + i);
            break;
        }
    }
}
forEach(array, function(element, index, array) {
    console.log(element);
});

上述代碼會在找到第一個符合條件的元素(即 3)時停止循環(huán)。

這種方法雖然不夠簡潔,但是它可以在不改變原來的forEach函數(shù)的情況下,增加新的功能。

6、使用 Array.prototype.find() 或 Array.prototype.findIndex() 方法代替

find() 方法會在找到符合條件的第一個元素后返回該元素,并停止循環(huán)。

例如:

let array = [1, 2, 3, 4, 5];
let found = array.find(function(element) {
    return element === 3;
});
console.log(found);

上述代碼會在找到第一個符合條件的元素(即 3)時停止循環(huán)并返回該元素。

Array.prototype.findIndex() 方法會在找到符合條件的第一個元素后返回該元素的索引,并停止循環(huán)。

例如:

let array = [1, 2, 3, 4, 5];
let index = array.findIndex(function(element) {
    return element === 3;
});
console.log(index);

上述代碼會在找到第一個符合條件的元素(即 3)時停止循環(huán)并返回該元素的索引。

使用 Array.prototype.find() 或 Array.prototype.findIndex() 方法可以在 forEach 循環(huán)中找到符合條件的第一個元素并停止循環(huán)。這兩種方法是在找到符合條件的元素后返回該元素或索引,而不是像 some() 方法或 for 循環(huán)中需要再次返回一個布爾值或使用 throw 語句來中斷循環(huán)。

總之,主要方法還是通過其它方式代替 forEach 循環(huán)的中斷,只有方法4 使用 try-catch 結(jié)構(gòu)是實際意義上中斷 forEach 循環(huán)。

到此這篇關(guān)于js中斷 forEach 循環(huán)的幾種方法的文章就介紹到這了,更多相關(guān)js中斷 forEach 循環(huán)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Three.js快速入門教程

    Three.js快速入門教程

    這篇文章主要為大家詳細介紹了Three.js快速入門教程,幫助大家快速入門,感興趣的小伙伴們可以參考一下
    2016-09-09
  • JavaScript基于ajax編輯信息用法實例

    JavaScript基于ajax編輯信息用法實例

    這篇文章主要介紹了JavaScript基于ajax編輯信息用法,涉及javascript基于Ajax操作鼠標事件及實時保存文本的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • JS原型對象的創(chuàng)建方法詳解

    JS原型對象的創(chuàng)建方法詳解

    這篇文章主要介紹了JS原型對象的創(chuàng)建方法,結(jié)合實例形式詳細分析了js對象的創(chuàng)建方法與相關(guān)注意事項,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • 十個JavaScript?lodash中的高頻使用方法整理

    十個JavaScript?lodash中的高頻使用方法整理

    本文梳理lodash中那些高頻使用的超究極無敵好用方法,熟練使用下面的十個方法能夠讓你的代碼原地起飛,為你的開發(fā)之旅極大的減輕心智負擔,快跟隨小編一起學習一下吧
    2024-01-01
  • arcgis for js實現(xiàn)地圖截圖、地圖打印功能

    arcgis for js實現(xiàn)地圖截圖、地圖打印功能

    這篇文章主要介紹了arcgis for js實現(xiàn)地圖截圖、地圖打印功能,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2024-12-12
  • three.js利用gpu選取物體并計算交點位置的方法示例

    three.js利用gpu選取物體并計算交點位置的方法示例

    這篇文章主要給大家介紹了關(guān)于three.js利用gpu選取物體并計算交點位置的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用three.js具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-11-11
  • js 獲取radio按鈕值的實例

    js 獲取radio按鈕值的實例

    這篇文章介紹了js 獲取radio按鈕值的實例,有需要的朋友可以參考一下
    2013-08-08
  • Web層改進II-用xmlhttp 無聲息提交復雜表單

    Web層改進II-用xmlhttp 無聲息提交復雜表單

    Web層改進II-用xmlhttp 無聲息提交復雜表單...
    2007-01-01
  • JavaScript判斷瀏覽器運行環(huán)境的詳細方法

    JavaScript判斷瀏覽器運行環(huán)境的詳細方法

    這篇文章主要給大家介紹了關(guān)于JavaScript判斷瀏覽器運行環(huán)境的詳細方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用JavaScript具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-06-06
  • jquery 時間戳轉(zhuǎn)日期過程詳解

    jquery 時間戳轉(zhuǎn)日期過程詳解

    這篇文章主要介紹了jquery 時間戳轉(zhuǎn)日期過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10

最新評論