在这个问题中,我被要求编写一个函数nextInLine,该函数以数组(arr)和数字(item)作为参数。将数字添加到数组的末尾,然后删除数组的第一个元素。然后,nextInLine函数应返回已删除的元素。

这是代码段:

function nextInLine(arr, item) {
  // Your code here

  return item;  // 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));


如何使此代码起作用?提前致谢!

最佳答案

使用.shift()删除并返回数组的第一个元素,使用push()将新元素添加到数组的末尾。为了要做

nextInLine([], 1)


返回1您需要在push()之前执行shift()



function nextInLine(arr, item) {
  arr.push(item);
  return arr.shift();
}

// 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));

console.log(nextInLine([], 1));

关于javascript - 编写Javascript队列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43127303/

10-12 20:38