2
I don't have a clue! please help urgently
ayormeday (7)

function insertIntoMiddle(array, item) {

}

/ Do not modify code below this line /

Modify the function to insert the given number into the exact middle of the array and return the array.

const items = insertIntoMiddle([1, 3], 2);
console.log(insertIntoMiddle([1, 3], 2), '<-- should be [1, 2, 3]');
console.log(insertIntoMiddle([1, 3, 7, 9], 5), '<-- should be [1, 3, 5, 7, 9]');

You are viewing a single comment. View All
1
ash15khng (218)

Do you have any code yet? We can't just give you answers for your homework, but if you have any questions or errors we can help.

1
ayormeday (7)

@ash15khng
array.splice(2,1,item);
return array;

1
ash15khng (218)

@ayormeday That wouldn't work, as it assumes that the item is always at index 2, and replaces 1 item at index 2. Your solution is close though.

function insertIntoMiddle(array, item) {
    let middle = array.length / 2;
    array.splice(middle, 0, item);
    return array;
}

array.splice takes 3 arguments, which are:

  • the position or index of the item you're replacing
  • the number of items you're replacing (set to 0 if you want to insert)
  • the item you're replacing
    So by this logic, you need to get the index of the item in the middle, (the variable middle), then replace 0 items at index middle with item.

Hope this helps! If it's a bit confusing, feel free to ask questions.