js数组中改变元素的位置——互换,置顶,上移,下移

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-16 18:50   2120   0

欢迎微信关注Jerome blog,用技术的心去生活

技术前言:

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

一、两个元素换位子

function swapArr(arr, index1, index2) {
    arr[index1] = arr.splice(index2, 1, arr[index1])[0];
    return arr;
}

二、置顶移动

function toFirst(fieldData,index) {

    if(index!=0){

        // fieldData[index] = fieldData.splice(0, 1, fieldData[index])[0]; 这种方法是与另一个元素交换了位子,

        fieldData.unshift(fieldData.splice(index , 1)[0]);

    }

}

三、up 上移动一格

function upGo(fieldData,index){

    if(index!=0){

        fieldData[index] = fieldData.splice(index-1, 1, fieldData[index])[0];

    }else{

        fieldData.push(fieldData.shift());

    }

}

四、down 下移动一格

function downGo(fieldData,index) {

    if(index!=fieldData.length-1){

        fieldData[index] = fieldData.splice(index+1, 1, fieldData[index])[0];

    }else{

        fieldData.unshift( fieldData.splice(index,1)[0]);

    }

}

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP