Stand in Line


#1

Tell us what’s happening:
使用push这个方法的时候,返回的是长度,不是整个数组,请问怎么办?

Your code so far


function nextInLine(arr, item) {
  // 请把你的代码写在这里
  arr = arr.push(item) // 这里的arr是6,而不是一个数组
  return arr.shift();  // 请修改这一行
}

// 初始化测试数据
var testArr = [1,2,3,4,5];

// 控制台输出
console.log("Before: " + JSON.stringify(testArr));
console.log(nextInLine(testArr, 6)); // Modify this line to test
console.log("After: " + JSON.stringify(testArr));

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.90 Safari/537.36.

Link to the challenge:
https://learn.freecodecamp.one/javascript-algorithms-and-data-structures/basic-javascript/stand-in-line/


#2

arr.push()不会返回一个新数组,而是返回原来数组push后的长度。所以不需要重新给arr赋值,直接

function nextInLine(arr, item) {
  // 请把你的代码写在这里
  arr.push(item) // 这里的arr是6,而不是一个数组
  return arr.shift();  // 请修改这一行
}

#3

非常感谢!确实是这个问题