【问题标题】:Move elements to the right Javascript [duplicate]将元素移动到右侧 Javascript [重复]
【发布时间】:2020-05-12 22:31:07
【问题描述】:

我有一个包含 5 个值的数组。我想循环遍历数组,以便值索引全部增加一,并且最终位置的项目移动到数组的前面。比如:

[1,2,3,4,5]

会变成:

[5,1,2,3,4]

在python中就这么简单:

lst = [1, 2, 3, 4, 5]
lst = lst[-1] + lst[:-1]

但是我无法弄清楚如何在 javascript 中执行此操作

在 javascript 中执行此操作的正确语法是什么?

【问题讨论】:

    标签: javascript arrays list sorting


    【解决方案1】:

    一种方法是这样的:

    const test = [1,2,3,4,5];
    
    test.unshift(test.pop());
    
    console.log(test)

    【讨论】:

    • 或者直接使用pop的返回值。
    【解决方案2】:

    您可以使用pop 获取数组中的最后一个条目,并使用unshift 将其推到最前面:

    array.unshift(array.pop());
    

    现场示例:

    const array = [1,2,3,4,5];
    console.log("before", array);
    array.unshift(array.pop());
    console.log("after", array);
    .as-console-wrapper {
        max-height: 100% !important;
     }

    反之,shift 将数组移动并为您提供第一个条目,push 添加到末尾。

    array.push(array.shift());
    

    现场示例:

    const array = [5,1,2,3,4];
    console.log("before", array);
    array.push(array.shift());
    console.log("after", array);
    .as-console-wrapper {
        max-height: 100% !important;
     }

    【讨论】:

    • 如果我想反其道而行之? (将元素向左移动?)
    • @Maurio - shift 移动数组并为您提供第一个条目,push 添加到末尾。
    • @Maurio array.push(array.shift());
    猜你喜欢
    • 2022-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-01
    • 2021-05-15
    • 2014-09-26
    相关资源
    最近更新 更多