首页 > 解决方案 > 按此顺序在 Javascript 中打印数字数组(倒数第一,倒数第二……)

问题描述

编写一个“PrintZigZag”程序,该程序提供一个包含任何值的 10 个整数的数组,并按以下顺序打印元素:第一个 - 最后一个,第二个 - 最后一个,等等……(必须假装没有编写程序知道在数组中输入的值是什么)

这是“初级Web开发人员”职位的面试问题,我不知道如何解决...

let numbers = [1,2,3,4,5,6,7,8,9,10];

标签: javascriptarraysfunctionloops

解决方案


这就是你要找的结果?

[1, 10, 2, 9, 3, 8, 4, 7, 5, 6]

我真的很喜欢面试问题,谢谢分享。请让我帮忙解释一下我在这里做什么

let numbers = [1,2,3,4,5,6,7,8,9,10];
var result = [];
for(i=1; i< numbers.length+1 /2; i++) {
    result.push(i);
    result.push(numbers.pop());

}

我从 1 开始循环遍历数组的一半。然后我将第一个索引推到结果数组上,然后在我弹出数组的最后一个数字之后立即进行。

这将建立一个由第一个数字和最后一个数字组成的新数组,最终到达末尾。


推荐阅读