Created code to remove a single value

This commit is contained in:
Mohammed Nabeel 2020-07-15 18:06:28 +03:00
parent 888383a44e
commit 3699f94da9
2 changed files with 34 additions and 24 deletions

View File

@ -1,5 +1,15 @@
const removeFromArray = function() { const removeFromArray = function(...args) {
let myArray = args[0];
let pos = 0;
for (let i = 1; i < args.length; i++) {
pos = myArray.indexOf(args[i]);
myArray.splice(pos, 1);
}
return myArray;
} }
module.exports = removeFromArray module.exports = removeFromArray

View File

@ -1,25 +1,25 @@
const removeFromArray = require('./removeFromArray') const removeFromArray = require('./removeFromArray')
describe('removeFromArray', function() { describe('removeFromArray', function() {
it('removes a single value', function() { it('removes a single value', function() {
expect(removeFromArray([1, 2, 3, 4], 3)).toEqual([1, 2, 4]); expect(removeFromArray([1, 2, 3, 4], 3)).toEqual([1, 2, 4]);
}); });
xit('removes multiple values', function() { xit('removes multiple values', function() {
expect(removeFromArray([1, 2, 3, 4], 3, 2)).toEqual([1, 4]); expect(removeFromArray([1, 2, 3, 4], 3, 2)).toEqual([1, 4]);
}); });
xit('ignores non present values', function() { xit('ignores non present values', function() {
expect(removeFromArray([1, 2, 3, 4], 7, "tacos")).toEqual([1, 2, 3, 4]); expect(removeFromArray([1, 2, 3, 4], 7, "tacos")).toEqual([1, 2, 3, 4]);
}); });
xit('ignores non present values, but still works', function() { xit('ignores non present values, but still works', function() {
expect(removeFromArray([1, 2, 3, 4], 7, 2)).toEqual([1, 3, 4]); expect(removeFromArray([1, 2, 3, 4], 7, 2)).toEqual([1, 3, 4]);
}); });
xit('can remove all values', function() { xit('can remove all values', function() {
expect(removeFromArray([1, 2, 3, 4], 1, 2, 3, 4)).toEqual([]); expect(removeFromArray([1, 2, 3, 4], 1, 2, 3, 4)).toEqual([]);
}); });
xit('works with strings', function() { xit('works with strings', function() {
expect(removeFromArray(["hey", 2, 3, "ho"], "hey", 3)).toEqual([2, "ho"]); expect(removeFromArray(["hey", 2, 3, "ho"], "hey", 3)).toEqual([2, "ho"]);
}); });
xit('only removes same type', function() { xit('only removes same type', function() {
expect(removeFromArray([1, 2, 3], "1", 3)).toEqual([1, 2]); expect(removeFromArray([1, 2, 3], "1", 3)).toEqual([1, 2]);
}); });
}); });