Bird
Raised Fist0
DSA Javascriptprogramming~10 mins

Array Deletion at Middle Index in DSA Javascript - Interactive Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to remove the middle element from the array using splice.

DSA Javascript
const arr = [1, 2, 3, 4, 5];
const middleIndex = Math.floor(arr.length / 2);
arr.splice([1], 1);
console.log(arr);
Drag options to blanks, or click blank then click option'
A0
BmiddleIndex
Carr.length
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Using 0 as the start index removes the first element instead of the middle.
Using arr.length as the start index causes no removal because it's out of range.
2fill in blank
medium

Complete the code to remove the middle element from an array with even length.

DSA Javascript
const arr = [10, 20, 30, 40];
const middleIndex = arr.length / 2 - 1;
arr.splice([1], 1);
console.log(arr);
Drag options to blanks, or click blank then click option'
AmiddleIndex
Barr.length / 2
C0
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Using length/2 as index removes the upper middle element instead of the lower.
Using 0 removes the first element.
3fill in blank
hard

Fix the error in the code to correctly remove the middle element from the array.

DSA Javascript
const arr = [5, 6, 7, 8, 9];
const middleIndex = Math.floor(arr.length / 2);
arr.splice([1], 1);
console.log(arr);
Drag options to blanks, or click blank then click option'
Aarr.length - 1
Barr.length
CmiddleIndex
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using arr.length as index causes no removal.
Using 0 removes the first element.
4fill in blank
hard

Fill both blanks to remove the middle element and print the updated array length.

DSA Javascript
const arr = [2, 4, 6, 8, 10, 12];
const middleIndex = [1];
arr.splice(middleIndex, [2]);
console.log(arr.length);
Drag options to blanks, or click blank then click option'
Aarr.length / 2 - 1
B1
C2
DMath.floor(arr.length / 2)
Attempts:
3 left
💡 Hint
Common Mistakes
Removing two elements instead of one.
Using wrong middle index for even length.
5fill in blank
hard

Fill all three blanks to remove the middle element and return the updated array.

DSA Javascript
function removeMiddle(arr) {
  const middleIndex = [1];
  arr.splice(middleIndex, [2]);
  return [3];
}

console.log(removeMiddle([7, 8, 9, 10, 11]));
Drag options to blanks, or click blank then click option'
AMath.floor(arr.length / 2)
B1
Carr
Darr.length
Attempts:
3 left
💡 Hint
Common Mistakes
Returning arr.length instead of the array.
Removing more than one element.

Practice

(1/5)
1. What happens when you delete the middle element from an array with an odd number of elements using array.splice(mid, 1) where mid is the middle index?
easy
A. The first element is removed instead.
B. The array remains unchanged.
C. All elements after the middle are removed.
D. The middle element is removed and the array size decreases by one.

Solution

  1. Step 1: Understand splice method behavior

    The splice method removes elements starting at the given index. Here, it removes 1 element at the middle index.
  2. Step 2: Effect on array size

    Removing one element reduces the array length by one, and elements after the removed one shift left.
  3. Final Answer:

    The middle element is removed and the array size decreases by one. -> Option D
  4. Quick Check:

    splice(mid, 1) removes middle element [OK]
Hint: Use splice(mid, 1) to remove middle element quickly [OK]
Common Mistakes:
  • Thinking splice does not change array size
  • Confusing splice with slice
  • Removing wrong index
2. Which of the following is the correct syntax to remove the middle element from an array arr in JavaScript?
easy
A. arr.delete(Math.floor(arr.length / 2));
B. arr.splice(Math.floor(arr.length / 2), 1);
C. arr.remove(Math.floor(arr.length / 2));
D. arr.pop(Math.floor(arr.length / 2));

Solution

  1. Step 1: Identify correct method to remove element by index

    JavaScript arrays use splice to remove elements at a specific index.
  2. Step 2: Calculate middle index correctly

    Math.floor(arr.length / 2) gives the middle index for odd or even length arrays.
  3. Final Answer:

    arr.splice(Math.floor(arr.length / 2), 1); -> Option B
  4. Quick Check:

    splice + floor middle index = correct syntax [OK]
Hint: Use splice with floor of length/2 for middle deletion [OK]
Common Mistakes:
  • Using non-existent methods like delete or remove
  • Using pop with index argument
  • Not flooring the middle index
3. What is the output of the following code?
let arr = [10, 20, 30, 40, 50];
let mid = Math.floor(arr.length / 2);
arr.splice(mid, 1);
console.log(arr);
medium
A. [10, 20, 40, 50]
B. [10, 20, 30, 40]
C. [10, 20, 30, 50]
D. [20, 30, 40, 50]

Solution

  1. Step 1: Calculate middle index

    Array length is 5, so middle index = floor(5/2) = 2.
  2. Step 2: Remove element at index 2

    Element at index 2 is 30, so splice removes 30.
  3. Step 3: Resulting array

    Array becomes [10, 20, 40, 50] after removal.
  4. Final Answer:

    [10, 20, 40, 50] -> Option A
  5. Quick Check:

    Removed element 30 at index 2 [OK]
Hint: Find middle index, splice removes that element [OK]
Common Mistakes:
  • Removing wrong index element
  • Not flooring middle index
  • Confusing splice with slice
4. Find the error in the code below that tries to remove the middle element from an array:
let arr = [1, 2, 3, 4, 5];
let mid = arr.length / 2;
arr.splice(mid, 1);
console.log(arr);
medium
A. splice cannot remove elements from arrays.
B. arr.length / 2 gives the last index, not middle.
C. mid should be floored to an integer before using in splice.
D. splice requires two arguments, but only one is given.

Solution

  1. Step 1: Check middle index calculation

    mid is calculated as arr.length / 2 = 2.5, which is a float, not an integer index.
  2. Step 2: Effect of float index in splice

    splice expects an integer index; JavaScript coerces 2.5 to 2, but explicitly using Math.floor(arr.length / 2) ensures clarity and avoids reliance on type coercion.
  3. Step 3: Correct approach

    Use Math.floor(arr.length / 2) to get integer index 2.
  4. Final Answer:

    mid should be floored to an integer before using in splice. -> Option C
  5. Quick Check:

    Index must be integer for splice [OK]
Hint: Always floor middle index before splice [OK]
Common Mistakes:
  • Using float index in splice
  • Assuming splice removes by value
  • Passing wrong number of arguments to splice
5. Given an array arr with an even number of elements, how can you remove the two middle elements correctly in JavaScript?
hard
A. Use arr.splice(arr.length / 2 - 1, 2);
B. Use arr.splice(arr.length / 2, 1); twice
C. Use arr.pop(); arr.shift();
D. Use arr.splice(arr.length / 2, 2);

Solution

  1. Step 1: Identify middle indices for even length

    For even length n, middle two elements are at indices n/2 - 1 and n/2.
  2. Step 2: Remove two elements starting at n/2 - 1

    Using arr.splice(arr.length / 2 - 1, 2) removes both middle elements at once.
  3. Step 3: Why other options fail

    Use arr.splice(arr.length / 2, 1); twice removes one element twice but shifts indices, causing wrong removal; Use arr.pop(); arr.shift(); removes first and last elements; Use arr.splice(arr.length / 2, 2); removes elements after middle.
  4. Final Answer:

    Use arr.splice(arr.length / 2 - 1, 2); -> Option A
  5. Quick Check:

    Remove two middle elements starting at n/2 - 1 [OK]
Hint: Start splice at n/2 - 1 to remove two middle elements [OK]
Common Mistakes:
  • Removing elements twice causing index shift
  • Removing first and last instead of middle
  • Starting splice at wrong index
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard