1 | var isArrayLike = require('./isArrayLike');
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 | function createBaseEach(eachFunc, fromRight) {
|
12 | return function(collection, iteratee) {
|
13 | if (collection == null) {
|
14 | return collection;
|
15 | }
|
16 | if (!isArrayLike(collection)) {
|
17 | return eachFunc(collection, iteratee);
|
18 | }
|
19 | var length = collection.length,
|
20 | index = fromRight ? length : -1,
|
21 | iterable = Object(collection);
|
22 |
|
23 | while ((fromRight ? index-- : ++index < length)) {
|
24 | if (iteratee(iterable[index], index, iterable) === false) {
|
25 | break;
|
26 | }
|
27 | }
|
28 | return collection;
|
29 | };
|
30 | }
|
31 |
|
32 | module.exports = createBaseEach;
|