Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tổng giá trị tuyệt đối của mảng - JavaScript

Viết hàm tính tổng giá trị tuyệt đối của tất cả phần tử trong mảng (không dùng hàm thư viện như Math.abs).

Ví dụ

Mảng: [1, -5, -34, -5, 2, 5, 6]

Tổng = 1 + 5 + 34 + 5 + 2 + 5 + 6 = 58

Giải pháp

Mã triển khai:

const arr = [1, -5, -34, -5, 2, 5, 6];
const absoluteSum = arr => {
  let res = 0;
  for (let i = 0; i < arr.length; i++) {
    if (arr[i] < 0) {
      res += arr[i] * -1; // Nghịch đảo số âm
    } else {
      res += arr[i];
    }
  }
  return res;
};

console.log(absoluteSum(arr));

Kết quả

Đầu ra trong console:

58

Lưu ý: Yêu cầu không dùng Math.abs. Thực tế nên dùng arr.reduce((sum, v) => sum + Math.abs(v), 0).