![](/img/trans.png)
[英]JavaScript function to reverseArrayInPlace — Eloquent JavaScript Ch4
[英]Why does this reverseArrayInPlace function not work?
我已经在该网站和其他网站上看到了该问题的答案,但是我没有在寻找使用另一组代码的问题的答案-我试图理解为什么这个特定代码无法按预期工作。 任何帮助将不胜感激。
任务是创建一个功能,该功能可以反转数组的顺序。 此任务的局限性在于,我不能使用内置的反向数组方法,也不能创建第二个数组,而只能复制原始数组。 我以为这段代码可以用,但不能用,我不知道为什么。 提前致谢。
var reverseArrayInPlace = function(array) {
for (var i = 0; i < Math.floor(array.length / 2); i++) {
var placeHolder = array[i];
array [i] = array[length - i - 1];
array[length - i - 1] = placeHolder;
}
};
如评论中所述,您需要定义length
或使用array.length
。
var reverseArrayInPlace = function(array) { for (var i = 0; i < Math.floor(array.length / 2); i++) { var length = array.length; var placeHolder = array[i]; array [i] = array[length - i - 1]; array[length - i - 1] = placeHolder; } }; var arr = [1, 2, 3, 4, 5]; reverseArrayInPlace(arr); console.log(arr);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.