JavaScript Exercises: Insert a new node at any position of a Singly Linked List

JavaScript Singly Linked List: Exercise-4 with Solution

Write a JavaScript program to insert a new node at any position of a Singly Linked List.

Sample Solution:

JavaScript Code:

``````class Node {
constructor(data) {
this.data = data
this.next = null
}
}

}
if(node==null){
return;
}
while (node.next) {
node = node.next;
}
node.next = newNode;
}

insertAt(index, newNode){
if(index==0) {
newNode.next = node;
return;
}
while(--index){
if(node.next!==null)
node = node.next;
else
throw Error("Index Out of Bound");
}
let tempVal = node.next;
node.next = newNode;
newNode.next = tempVal;
}

displayList(){
var str = ""
while (node) {
str += node.data + "->";
node = node.next;
}
str += "NULL"
console.log(str);
}
}
numList.displayList();
console.log("Insert 4 at index position 1:")
numList.insertAt(1, new Node(4));
numList.displayList();
console.log("Insert 5 at index position 3:")
numList.insertAt(3, new Node(5));
numList.displayList();
console.log("Insert 6 at index position 6:")
numList.insertAt(6, new Node(6));
numList.displayList();

```
```

Sample Output:

```12->13->14->15->NULL
Insert 4 at index position 1:
12->4->13->14->15->NULL
Insert 5 at index position 3:
12->4->13->5->14->15->NULL
Insert 6 at index position 6:
12->4->13->5->14->15->6->NULL
```

Flowchart:

Live Demo:

See the Pen javascript-singly-linked-list-exercise-4 by w3resource (@w3resource) on CodePen.

Improve this sample solution and post your code through Disqus

Singly Linked List Previous: Count number of nodes in a Singly Linked List.
Singly Linked List Next: Insert a new node at the beginning of a Singly Linked List.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿

JavaScript: Tips of the Day

Shorten an array using its length property

A great way of shortening an array is by redefining its length property.

```let array = [0, 1, 2, 3, 4, 5, 6, 6, 8, 9]
array.length = 4
// Result: [0, 1, 2, 3]
```

Important to know though is that this is a destructive way of changing the array. This means you lose all the other values that used to be in the array.

Ref: https://bit.ly/2LBj213