Computer >> Máy Tính >  >> Lập trình >> Javascript

Tìm tất cả các cặp tổng thành một giá trị đích trong JavaScript


Chúng tôi bắt buộc phải viết một hàm JavaScript lấy một mảng số làm đối số đầu tiên và một số tổng mục tiêu làm đối số thứ hai.

Hàm phải trả về một mảng gồm tất cả các cặp số đó từ mảng cộng lại thành tổng mục tiêu được chỉ định bởi đối số thứ hai.

Chúng tôi sẽ sử dụng một đối tượng bản đồ để kiểm tra các cặp và đẩy các cặp mong muốn sang một mảng mới.

Ví dụ

Mã cho điều này sẽ là -

const arr = [7, 0, -4, 5, 2, 3];
const allTwoSum = (arr, target) => {
   const map = {};
   const results = [];
   for (let i = 0; i < arr.length; i++) {
      if (map[arr[i]]) {
         results.push([target − arr[i], arr[i]]);
         continue;
      };
      map[target − arr[i]] = true;
   };
   return results;
};
console.log(allTwoSum(arr, 5));

Đầu ra

Và đầu ra trong bảng điều khiển sẽ là -

[ [ 0, 5 ], [ 2, 3 ] ]