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

Ký tự thường xuyên thứ hai trong một chuỗi - JavaScript

Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một chuỗi và trả về ký tự từ chuỗi xuất hiện nhiều thứ hai trong số lần.

Giả sử sau đây là chuỗi của chúng tôi -

const str = 'This string will be used to calculate frequency';

Ở trên, ký tự phổ biến thứ hai là “e”.

Ví dụ

Bây giờ hãy để chúng tôi xem mã hoàn chỉnh -

const str = 'This string will be used to calculate frequency';
const secondMostFrequent = str => {
   const strArr = str.split('');
   const map = strArr.reduce((acc, val) => {
      if(acc.has(val)){
         acc.set(val, acc.get(val) + 1);
      }else{
         acc.set(val, 1);
      };
      return acc;
   }, new Map);
   const frequencyArray = Array.from(map);
   return frequencyArray.sort((a, b) => {
      return b[1] - a[1];
   })[1][0];
};
console.log(secondMostFrequent(str));

Đầu ra

Điều này sẽ tạo ra kết quả sau trong bảng điều khiển -

e