gpt4 book ai didi

javascript - 在javascript中向前移动数组

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:58:35 25 4
gpt4 key购买 nike

好的,所以我不知道标题是否正确,但我正在努力做的是找到一种算法来做这样的事情。所以我们有一个输入数组,例如:['a','b', 'c', 'd', ...] 直到字母表的末尾,以及一个要移动的数字。如果我要换一个数字 3,我必须输出像 ['x', 'y', 'z', 'a', 'b', 'c', ...] 这样的数组;关于如何做的任何想法?我试过:

function solve(args)
{
let arr = ['a', 'b', 'c', 'd'];
let number = 3;

for (let i = 0; i < arr.length; i++)
{
if (typeof arr[i + 1] === undefined)
{
arr[0] = arr[i];
}
else if (typeof arr[i - 1] === undefined)
{
arr[arr.length - 1] = arr[0];
}
else
{
arr[i] = arr[i + 1];
}
}
console.log(arr);
}

最佳答案

除了打印 [d,e,f ... a,b,c]

几乎就是这样了
for(var i = 0; i < number; i++){
arr.push(arr.shift());
}

正如评论中指出的那样(感谢@dtkaias):结果为 [x,y,z,a,b,c...]

for(var i = 0; i < number; i++){
arr.unshift(arr.pop());
}

unshift 函数将一个元素添加到数组的前面,而 ​​pop 函数删除最后一项,因此它将最后一项移到前面 循环中的 number 次。

关于javascript - 在javascript中向前移动数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41708278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com