日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

假設我們有一個像這樣的數字數組 –

const arr = [1, 6, 3, 1, 3, 1, 6, 3];

登錄后復制

我們需要編寫一個 JavaScript 函數,該函數接受一個這樣的數組作為第一個也是唯一的參數。然后該函數應該在數組中查找出現奇數次(不包括僅一次)的所有此類數字。

例如,

在上面的數組中,數字1 和 3 都出現了 3 次(奇數),因此我們的函數應該刪除這兩個數字的第三次出現。

輸出數組應該如下所示 –

const output = [1, 6, 3, 1, 3, 6];

登錄后復制

我們將準備一個哈希映射來跟蹤每個數字的出現次數,最后我們將迭代該映射以刪除最后一次出現的出現奇數次的該數字。

映射中的每個鍵都將保存一個數組值,其中第一個元素是該元素出現的次數,第二個元素是該元素出現的最后一個索引。

示例

其代碼為 –

?現場演示

const arr = [1, 6, 3, 1, 3, 1, 6, 3];
const removeOddOccurence = (arr =[]) => {
   // keeping the original array unaltered
   const copy = arr.slice();
   const map = {};
   arr.forEach((num, ind) => {
      if(map.hasOwnProperty(num)){
         map[num][0]++;
         map[num][1] = ind;
      }else{
         map[num] = [1, ind];
      };
   });
   for(const key in map){
      const [freq, index] = map[key];
      if(freq !== 1 && freq % 2 === 1){
         copy.splice(index, 1, '');
      };
   };
   return copy.filter(el => el !== '');
};
console.log(removeOddOccurence(arr));

登錄后復制

輸出

控制臺中的輸出將是 –

[1, 6, 3, 1, 3, 6]

登錄后復制

以上就是在 JavaScript 中從數組中刪除任何數字/元素的奇數出現的詳細內容,更多請關注www.92cms.cn其它相關文章!

分享到:
標簽:元素 刪除 奇數 數字 組中
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定