Remove Elements from a Linked List

Remove Elements from a Linked List


Tell us what’s happening:

Why am I failing the tester? It says that currentNode is not defined.

Your code so far

function LinkedList() { 
  var length = 0; 
  var head = null; 

  var Node = function(element){ // {1} 
    this.element = element; = null; 

  this.size = function() {
    return length;

  this.head = function(){
    return head;

  this.add = function(element){
    var node = new Node(element);
    if(head === null){
        head = node;
    } else {
        currentNode = head;

            currentNode  =;
        } = node;


  this.remove = function(element){
    var currentNode = head;
    var previousNode;
    if(currentNode.element === element){
        head =;
    } else {
        while(currentNode.element !== element) {
            previousNode = currentNode;
            currentNode =;
        } =;

    length --;

  // Only change code below this line

  // Only change code above this line

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36.

Link to the challenge:


Your code is correct.

The test is running the add method to set up the test and is encountering and error there. The error:

// running test
currentNode is not defined
currentNode is not defined
currentNode is not defined
// tests completed

When I change line 23 (in the add method) to:

       var currentNode = head;

It passes. It was failing because currentNode was being used in the add method but was never defined. It is a mistake in the problem code and not your fault. I’ll add it to the list of things that need to be changed.


This challenge is still missing the currentNode definition. You will find the same issue on the: Search within a Linked List example (on line 23). Not sure if this is the place to report this.

Edit Same thing on Remove Elements from a Linked List by Index
**Edit_2 ** Same on Add Elements at a Specific Index in a Linked List (a bad copy-paste)