Tell us what’s happening:
I don’t know what’s wrong but it ain’t satisfying one test condition only
Your code so far
function filteredArray(arr, elem) {
let newArr = [...arr];
// change code below this line
var arr1=[]
for(var i=0 ; i < arr.length ; i++)
{
arr1 = arr[i];
for(var j=0 ; j < arr1.length ; j++)
{
if(arr1[j]===elem)
{
newArr.pop(arr1);
break;
}
else
{
continue;
}
}
}
// change code above this line
return newArr;
}
// change code here to test different cases:
console.log(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3));
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
.
Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-data-structures/iterate-through-all-an-arrays-items-using-for-loops
You have misunderstanding in what pop()
does.
pop()
takes no argument; it always removes the last element of an array and returns that element.
I think my first concern is why are you using pop. As far as i know, pop does not take any parameters and simply pops the last item in the array out.
Here is the reference i am using https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/pop
Perhaps use the delete function call instead.
oh my bad what about now
function filteredArray(arr, elem) {
let newArr = [...arr];
// change code below this line
var arr1=[]
for(var i=0 ; i < arr.length ; i++)
{
arr1 = arr[i];
for(var j=0 ; j < arr1.length ; j++)
{
if(arr1[j]===elem)
{
newArr.splice(i,1);
}
else
{
continue;
}
}
}
// change code above this line
return newArr;
}
// change code here to test different cases:
console.log(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3));
I’ve edited your post for readability. When you enter a code block into the forum, precede it with a line of three backticks and follow it with a line of three backticks to make easier to read. See this post to find the backtick on your keyboard. The “preformatted text” tool in the editor (</>
) will also add backticks around text.
