在 JavaScript 中查詢混合資料型別陣列中的平均值


假設我們有一個混合資料型別的陣列,比如這個:-

const arr = [1,2,3,4,5,"4","12","2",6,7,"4",3,"2"];

我們需要編寫一個 JavaScript 函式,它接受其中一個這樣的陣列,並返回所有這樣的元素(它們是一個數字或可以部分或全部轉換為一個數字)的平均值。

字串 “3454fdf” 不包含在問題陣列中,但如果它不存在,我們將使用數字 3454 作為其對平均值的貢獻。

示例

程式碼如下:-

const arr = [1,2,3,4,5,"4","12","2",6,7,"4",3,"2"];
const calculateAverage = arr => {
   let sum = 0, count = 0;
   for(let i = 0; i < arr.length; i++){
      const val = parseInt(arr[i]);
      if(val){
         sum += val;
         count++;
      };
   };
   return (sum / count);
};
console.log(calculateAverage(arr));

輸出

並且控制檯中的輸出將為:-

4.230769230769231

更新於: 20-11-2020

303 次瀏覽

開啟您的 職業生涯

透過完成課程並獲得認證

開始學習
廣告
© . All rights reserved.