如何将元素拼接到数组的开头?

这个问题在这里已经有了答案:

  • 如何在JavaScript中的数组的开头添加新的数组元素? 6个答案
  • JavaScript数组rotate()16个答案

  • 尝试在for循环中移动数组:

    function rotate(arr, num){
        for(var i = 0; i < num; i++){
            item = arr[arr.length-1]
            arr.splice(arr.length-1, 1);
            arr.unshift(item)
        }
        return arr
    }
    
    alert(JSON.stringify(rotate(["Harry", "Sarah", "Oscar", "Tina"], 2)));
    alert(JSON.stringify(rotate(["Harry", "Sarah", "Oscar", "Tina"], 1)));

    你不需要一个循环。 首先拼接数组末尾的最后一个num元素,然后将它们全部拼接到前面。

    function rotate(arr, num) {
            var lastN = arr.splice(-num, num);
            [].splice.apply(arr, [0, 0].concat(lastN));
            return arr;
        }
    document.getElementById("result").innerHTML = JSON.stringify(rotate(["Harry", "Sarah", "Oscar", "Tina"], 2));
    <div id="result"></div>
    链接地址: http://www.djcxy.com/p/19353.html

    上一篇: How to splice an element to the start of an array?

    下一篇: Add item to the beginning of the list