js简单实现数据上移、下移、置顶、置底

如图,要实现这种效果可以使用JavaScript的数组api。

unshift():向数组的开头添加一个或更多元素,并返回新的长度。
shift():删除并返回数组的第一个元素。
splice() :删除元素,并向数组添加新元素。
push() :向数组的末尾添加一个或更多元素,并返回新的长度。

js简单实现数据上移、下移、置顶、置底_第1张图片

1.上移
  moveUp(list, index) {
      if (index != 0) {
        list[index] = list.splice(index - 1, 1, list[index])[0];
      } else {
        list.push(list.shift());
      }
    },
2.下移
  moveDown(list, index) {
      if (index != list.length - 1) {
        list[index] = list.splice(index + 1, 1, list[index])[0];
      } else {
        list.unshift(list.splice(index, 1)[0]);
      }
    },
3.置顶
 toTop(list, index) {
      if (index != 0) {
        list.unshift(list.splice(index, 1)[0]);
      }
    },
4.置底
  toBottom(list, index) {
      if (index != list.length - 1) {
        list.push(list.splice(index, 1)[0]);
      }
    }

list为列表数组,index为点击项的索引。

你可能感兴趣的:(JavaScript)