foreach-extended

foreach component + npm package

foreach + break and continue

Iterate over the key value pairs of either an array-like object or a dictionary like object + break and continue constructs.

var each = require('foreach');
 
var result = each([1,2,3], function (valuekeyarray) {
    console.log([key, value]);  // Prints out:  [0, 1] then [1, 2] then iteration stops 
 
    if (key == 1) return [key, value, array]; // break;  
});
 
console.log(result); // Prints out [1,2, [1, 2, 3]] 
 
each({0:1,1:2,2:3}, function (valuekeyobject) {
    // Simple object iteration 
});
 
 
// When it is required also to break the outer loop 
var result = each([[1, 2, 3], [3, 4, 5], {"5": "6", "7": "8"}, [1,2,3,4,5]], function (valuekeyarray) {
    return each(value, function (valuekeyobject) {
        return value === "6" ? "This value is returned by foreach" : undefined; // returning undefined means that iteration should continue (it is also an equivalent of `continue` call) 
    });
 
    if (key == 3) return [key, value, array]; // break; (this break will not execute) 
});
 
console.log(result); // Prints out "This value is returned by foreach"