diff --git a/04_removeFromArray/removeFromArray.js b/04_removeFromArray/removeFromArray.js index 1bedeb0..f96b1a8 100644 --- a/04_removeFromArray/removeFromArray.js +++ b/04_removeFromArray/removeFromArray.js @@ -1,6 +1,18 @@ -const removeFromArray = function() { - +const removeFromArray = function(array, ...remove) { + remove.forEach(element => { + let findIndexElement = array.findIndex(x => x == element); + let saveArray = []; + for (let i = 0; i < array.length - findIndexElement; i++) { + saveArray.push(array.pop()); + } + array.pop(); + for (let i = 0; i < saveArray.length; i++) { + array.push(saveArray[i]); + } + }); + return array; }; + // Do not edit below this line module.exports = removeFromArray; diff --git a/04_removeFromArray/removeFromArray.spec.js b/04_removeFromArray/removeFromArray.spec.js index 21f34cf..2d0797d 100644 --- a/04_removeFromArray/removeFromArray.spec.js +++ b/04_removeFromArray/removeFromArray.spec.js @@ -4,7 +4,7 @@ describe('removeFromArray', () => { test('removes a single value', () => { expect(removeFromArray([1, 2, 3, 4], 3)).toEqual([1, 2, 4]); }); - test.skip('removes multiple values', () => { + test('removes multiple values', () => { expect(removeFromArray([1, 2, 3, 4], 3, 2)).toEqual([1, 4]); }); test.skip('ignores non present values', () => {