Added solution for removeFromArray

This commit is contained in:
Nidhish1407 2020-08-27 16:12:33 +05:30
parent 2a699ab109
commit 30b8f44cd1
2 changed files with 15 additions and 8 deletions

View File

@ -1,5 +1,12 @@
const removeFromArray = function() {
const removeFromArray = function(arr,...args) {
//[...args]
let newArr = [];
arr.forEach(element => {
if(!args.includes(element))
newArr.push(element);
});
// console.log(newArr);
return newArr;
}
module.exports = removeFromArray

View File

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