我正在尝试以相反的顺序打印一个数组,但它不会
I'm trying print an array in reverse order but it won't
我创建了一个数组,我正在尝试打印它的反面。输出应该是 4 3 2 1,但是我得到的输出是 undefined 4 3 2 1
这个undefined是从哪里来的?
你能帮忙找出这里的逻辑错误吗,谢谢?
"use strict";
let array = [1, 2, 3, 4];
for (let i = array.length; i >= 0; i--) {
console.log(array[i]);
}
您的代码无效,因为数组从索引 0 开始
所以你应该迭代索引 0
for (i = array1.length - 1; i >= 0; i--)
另请注意,您的代码打印的是数组的反转,它不会反转它
如果您想这样做,请使用
var array = [1, 2, 3, 4];
var reverseArray = function (array1 = [],) {
for (i = array1.length-1; i > -1; i--) {
console.log(array1[i]);
}
}
reverseArray(array);
记住最后一个索引是 3 而不是 4,所以您要从中减去 1。
你可以这样做
var array = [1,2,3,4]
function reverseArray(array1){
var tmpArray = []
for(var i=array1.length-1;i>=0;i--)
{
tmpArray.push(array1[i]);
}
return tmpArray;
}
var reverseArray = reverseArray(array);
console.log(reverseArray)
我创建了一个数组,我正在尝试打印它的反面。输出应该是 4 3 2 1,但是我得到的输出是 undefined 4 3 2 1
这个undefined是从哪里来的?
你能帮忙找出这里的逻辑错误吗,谢谢?
"use strict";
let array = [1, 2, 3, 4];
for (let i = array.length; i >= 0; i--) {
console.log(array[i]);
}
您的代码无效,因为数组从索引 0 开始
所以你应该迭代索引 0
for (i = array1.length - 1; i >= 0; i--)
另请注意,您的代码打印的是数组的反转,它不会反转它
如果您想这样做,请使用
var array = [1, 2, 3, 4];
var reverseArray = function (array1 = [],) {
for (i = array1.length-1; i > -1; i--) {
console.log(array1[i]);
}
}
reverseArray(array);
记住最后一个索引是 3 而不是 4,所以您要从中减去 1。
你可以这样做
var array = [1,2,3,4]
function reverseArray(array1){
var tmpArray = []
for(var i=array1.length-1;i>=0;i--)
{
tmpArray.push(array1[i]);
}
return tmpArray;
}
var reverseArray = reverseArray(array);
console.log(reverseArray)