UNPKG

@newdash/newdash

Version:

javascript/typescript utility library

34 lines (33 loc) 1.1 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const baseForOwn_1 = __importDefault(require("./baseForOwn")); const isArrayLike_1 = __importDefault(require("../isArrayLike")); /** * The base implementation of `forEach`. * * @private * @param {Array|Object} collection The collection to iterate over. * @param {Function} iteratee The function invoked per iteration. * @returns {Array|Object} Returns `collection`. */ function baseEach(collection, iteratee) { if (collection == null) { return collection; } if (!(0, isArrayLike_1.default)(collection)) { return (0, baseForOwn_1.default)(collection, iteratee); } const length = collection.length; const iterable = Object(collection); let index = -1; while (++index < length) { if (iteratee(iterable[index], index, iterable) === false) { break; } } return collection; } exports.default = baseEach;