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

Trả về phần tử xuất hiện với số lần nhiều thứ hai trong JavaScript mảng

Chúng tôi được yêu cầu viết một hàm JavaScript sử dụng một mảng các ký tự. Hàm phải trả về phần tử xuất hiện với số lần nhiều thứ hai trong mảng.

Ví dụ -

Nếu mảng đầu vào là -

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

Sau đó, đầu ra phải là -

const output = 2;

Ví dụ

const arr = [2, 5, 4, 3, 2, 6, 5, 5, 7, 2, 5];
const findSecondMost = (arr = []) => {
   const map={};
   arr.forEach(el => {
      if(map.hasOwnProperty(el)){
         map[el]++; }else{ map[el] = 1;
      }
   })
   const sorted = Object.keys(map).sort((a,b) => map[b]-map[a]);
   return sorted[1];
};
console.log(findSecondMost(arr));

Đầu ra

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

2