diff --git a/Exercises/1-remove.js b/Exercises/1-remove.js index 82fba07..c655919 100644 --- a/Exercises/1-remove.js +++ b/Exercises/1-remove.js @@ -1,7 +1,8 @@ 'use strict'; const removeElement = (array, item) => { - // Remove item from array modifying original array + const index = array.indexOf(item); + return index !== -1 ? array.splice(index, 1) : array; }; module.exports = { removeElement }; diff --git a/Exercises/2-elements.js b/Exercises/2-elements.js index 8518c71..f7f60bc 100644 --- a/Exercises/2-elements.js +++ b/Exercises/2-elements.js @@ -1,7 +1,11 @@ 'use strict'; const removeElements = (array, ...items) => { - // Remove multiple items from array modifying original array + for (const i of items) { + const index = array.indexOf(i); + if (index !== -1) array.splice(index, 1); + } + return array; }; module.exports = { removeElements }; diff --git a/Exercises/3-unique.js b/Exercises/3-unique.js index b738823..85c4eeb 100644 --- a/Exercises/3-unique.js +++ b/Exercises/3-unique.js @@ -3,6 +3,12 @@ // Create and return a new array without duplicate elements // Don't modify initial array -const unique = array => []; +const unique = array => { + const arr = []; + for (const item of array) + if (!arr.includes(item)) arr.push(item); + return arr; +}; module.exports = { unique }; + diff --git a/Exercises/4-difference.js b/Exercises/4-difference.js index 37d24ab..3f5c97a 100644 --- a/Exercises/4-difference.js +++ b/Exercises/4-difference.js @@ -3,6 +3,12 @@ // Find difference of two arrays // elements from array1 that are not includes in array2 -const difference = (array1, array2) => []; +const difference = (array1, array2) => { + const arr = []; + for (const item of array1) { + if (!array2.includes(item)) arr.push(item); + } + return arr; +}; module.exports = { difference };