I was looking over the differences between the Underscore and Lodash libraries and I came upon one issue regarding _.each / _.forEach.
In Underscore, the _.each function cannot break out of the looping. When using return false, it only worked as a "continue" statement. (which was the intended functionality in my case) = It forces the next iteration of the loop to take place, skipping any code in between.
In Lodash, on the other hand, returning false tells _.forEach() that this iteration will be the last. Is there a way to make the "continue" behavior also functional in Lodash?
Thanks.
In Lodash, on the other hand, returning false tells _.forEach() that this iteration will be the last. Is there a way to make the "continue" behavior also functional in Lodash?
You could return true
, or just a single return
(which returns undefined
), this value is different from needed false
for "exit iteration early by explicitly returning false
."
_.forEach([1, 2, 3, 4, 5], function (a) { if (a < 3) return; // continue console.log(a); if (a > 3) return false; // break // return undefined; // continue, undefined is the standard value of ending a function });
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.