Есть это упражнение, которое я не могу понять. Мне нужно написать функцию, которая имитирует подчеркивание. js function _.each () таким образом, чтобы получить тот же результат, а также пройти следующие тесты:
- должен перебирать массив
- должен перебирать объект
- должен игнорировать прототип объекта
- должен обращаться к исходной коллекции
- должен связываться с контекстом, если он передан
- должен вернуть коллекцию
Это пустая данная функция:
_.each= function (collection, iteratee, context) {}
, и это то, что я написал до сих пор и не прошел ни один из тестов:
_.each = function (collection, iteratee, context) {
if (Array.isArray(collection)) {
for (let key of collection) {
console.log(key, collection.keys());
}
} else {
for (let prop in collection) {
if (collection.hasOwnProperty(prop)) {
console.log(`${prop}: ${collection[prop]}`);
}
}
}
return collection
};
Я пытаюсь выполнить итерацию по массиву с помощью for l oop и через объект с for in l oop, игнорируя свойства прототипа объекта. На самом деле я не хочу ни решать проблему, ни указывать код c, просто указывать sh в нужном направлении, а потом искать решение сам. Я новичок в JS и признаю, что не могу придумать, как решить эту проблему. Любой совет будет очень признателен. Спасибо