【发布时间】:2019-04-04 00:53:58
【问题描述】:
我正在尝试使用 push 和 shift 方法为反向数组编写一个函数,但它不起作用。
function reverseArrayInPlace(array) {
for (let i = 0; i < array.length - 1; i++) {
array.push(array.shift);
}
return array;
}
我猜 for 循环会永远循环,因为我在 eloquentjavascript 的网站上运行代码,并且在运行代码时收到以下消息“此代码已运行 2 秒。中止它?”这段代码有什么问题?
【问题讨论】:
-
shift()notshift...你必须调用方法 -
还是不行@charlietfl -
[1, 2, 3]->[3, 1, 2]。 -
@JackBashford 这里隐藏了两个问题。第一个是印刷错误,第二个是错误的算法方法。修复一个不会自动修复另一个。
-
@charlietfl 谢谢。实际问题不是调用方法。仍然是错误的,但看到结果后,我明白了逻辑部分。
-
在浏览器不死机时可以更轻松地整理逻辑
标签: javascript arrays