function nextInLine(arr, item) {
// Your code here
arr.push(item);
var removed = arr.shift(item);
return removed; // Change this line
}
// Test Setup
var testArr = [1,2,3,4,5];
// Display Code
console.log("Before: " + JSON.stringify(testArr));
console.log(nextInLine(testArr, 6)); // Modify this line to test
console.log("After: " + JSON.stringify(testArr));`
it says that the value will be "before = [1,2,3,4,5] and after = [2,3,4,5,6] " why it is not [2,3,4,5,1]?
push takes the first item and add it to the back why they put 6 instead of 1 ?
push takes the argument you put in it, in this case item, the second parameter of the function, has value of 6
the function call is standInLine(testArr, 6)
6 is passed in item
and you push that as you write arr.push(item)
and for completeness, shift doesn’t need an argument, it doesn’t do anything with the argument you passed in
I’ve edited your post for readability. When you enter a code block into a forum post, please precede it with a separate line of three backticks and follow it with a separate line of three backticks to make it 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.
Your code has been blurred out to avoid spoiling a full working solution for other campers who may not yet want to see a complete solution. In the future, if you post a full passing solution to a challenge and have questions about it, please surround it with [spoiler] and [/spoiler] tags on the line above and below your solution code.