Hiệu tuyệt đối của các mảng số trong JavaScript
Giả sử, chúng ta có hai mảng như sau:
const arr1 = [1,2,3,4,5,6]; const arr2 = [9,8,7,5,8,3];
Chúng ta cần viết một hàm JavaScript nhận vào hai mảng như vậy và trả về một mảng hiệu tuyệt đối giữa các phần tử tương ứng của mảng.
Vì vậy, với các mảng này, kết quả đầu ra nên trông như:
const output = [8,6,4,1,3,3];
Chúng ta sẽ dùng vòng lặp for và liên tục đẩy hiệu tuyệt đối lần lượt vào một mảng mới và cuối cùng trả về mảng.
Do đó, hãy viết mã cho hàm này:
Ví dụ
Mã thực hiện như sau:
const arr1 = [1,2,3,4,5,6];
const arr2 = [9,8,7,5,8,3];
const absDifference = (arr1, arr2) => {
const res = [];
for(let i = 0; i < arr1.length; i++){
const el = Math.abs((arr1[i] || 0) - (arr2[i] || 0));
res[i] = el;
};
return res;
};
console.log(absDifference(arr1, arr2));
Đầu ra
Kết quả trong console sẽ là:
[ 8, 6, 4, 1, 3, 3 ]