From 34a0d9b1b0e25ed173c03d753132d6e341355c9d Mon Sep 17 00:00:00 2001 From: Shay Hoffman Date: Wed, 28 Feb 2018 14:18:08 -0600 Subject: [PATCH 1/3] made new branch --- 06week/higherOrder.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/06week/higherOrder.js b/06week/higherOrder.js index 73926e3dc..70701afb5 100644 --- a/06week/higherOrder.js +++ b/06week/higherOrder.js @@ -5,7 +5,7 @@ const assert = require('assert'); function forEach(arr, callback) { // Your code here } - +console.log() function map(arr, callback) { // Your code here } From 9ef9abe752daf8a90990856e3a3fb901dd95961a Mon Sep 17 00:00:00 2001 From: Shay Hoffman Date: Wed, 28 Feb 2018 15:49:05 -0600 Subject: [PATCH 2/3] some functions --- 06week/higherOrder.js | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/06week/higherOrder.js b/06week/higherOrder.js index 70701afb5..e92d50f9e 100644 --- a/06week/higherOrder.js +++ b/06week/higherOrder.js @@ -2,17 +2,32 @@ const assert = require('assert'); -function forEach(arr, callback) { - // Your code here -} -console.log() -function map(arr, callback) { - // Your code here -} +//need the forEach function to run the arr.length number of times. +const forEach = (arr, callback) => { + for (let i = 0; i < arr.length; x++){ + return callback(arr[i]); + } +}; -function filter(arr, callback) { - // Your code here -} +//passing in an array, and returning a new array with changes we've applied to each item. +const map = (arr, callback) => { + const adjustedArray = [] + arr.forEach((item) => { + adjustedArray.push(callback(item)); + }); + return adjustedArray +}; + +//creates a new array including only elements that pass the tests. +const filter = (arr, callback) => { + const filteredArray = [] + arr.forEach((item) => { + if (callback(item)) { + filteredArray.push(callback(item)); + } + }); + return filteredArray; +}; function some(arr, callback) { // Your code here From ea522e59201ad590814431f02d2d926e3f82eaf4 Mon Sep 17 00:00:00 2001 From: Shay Hoffman Date: Wed, 28 Feb 2018 19:04:51 -0600 Subject: [PATCH 3/3] more functions --- 06week/higherOrder.js | 45 +++++++++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/06week/higherOrder.js b/06week/higherOrder.js index e92d50f9e..c24d669df 100644 --- a/06week/higherOrder.js +++ b/06week/higherOrder.js @@ -4,37 +4,48 @@ const assert = require('assert'); //need the forEach function to run the arr.length number of times. const forEach = (arr, callback) => { - for (let i = 0; i < arr.length; x++){ - return callback(arr[i]); + for (let i = 0; i < arr.length; i++){ + callback(arr[i], i, arr); } -}; +} //passing in an array, and returning a new array with changes we've applied to each item. const map = (arr, callback) => { - const adjustedArray = [] - arr.forEach((item) => { - adjustedArray.push(callback(item)); - }); - return adjustedArray -}; + const adjustedArray = []; + for (let i = 0; i < arr.length; i++) { + adjustedArray.push(callback(arr[i])); + } + return adjustedArray; +} //creates a new array including only elements that pass the tests. const filter = (arr, callback) => { const filteredArray = [] - arr.forEach((item) => { - if (callback(item)) { - filteredArray.push(callback(item)); + for (let i = 0; i < arr.length; i++){ + if (callback(arr[i])) { + filteredArray.push(arr[i]); } - }); + } return filteredArray; -}; +} -function some(arr, callback) { - // Your code here +//tests whether at least one item in the array passes the tests +const some = (arr, callback) => { + for(let i = 0; i < arr.length; i++){ + if (callback(arr[i])) { + return true; + } + } + return false; } function every(arr, callback) { - // Your code here + for(let i = 0; i < arr.length; i++) { + if(!callback(arr[i])){ + return false; + } + } + return true; } if (typeof describe === 'function') {