1. 程式人生 > 其它 >改變一個數組內元素的位置,不通過splice方法。

改變一個數組內元素的位置,不通過splice方法。

這個資料

現在已經完成了,將本來在第一位的18代金券改到第31位,下面說一下怎麼實現的。

//currHotRightsTypeSorted這個是資料來源頭,legalRightsType這個是資料的分類,因為18元代金券只在兩個分類中
//1對資料進行遍歷,找打需要分類中某個元素並賦值給一個新的元素,以後用,並刪除他,通過他的i值。
//2如果資料分類資料中的長度小於31位時,放到最後一位。
  currHotRightsTypeSorted.forEach((num: any) => {
            let tmp = '';
            if (num.legalRightsType == '1015' || num.legalRightsType == '----') {
              for (let i = 0; i < num.list.length; i++) {
                if (num.list[i].legalRightsNbr === 'QY1622613823700') {
                  tmp = num.list.splice(i, 1);
                }
              }
              if (num.list.length >= 31) {
                num.list.splice(30, 0, tmp[0]);
              } else {
                num.list.push(tmp[0]);
              }
            }
          });