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

Tìm tất cả các chuỗi dài nhất từ ​​một mảng trong JavaScript

Giả sử, chúng ta có một mảng các chuỗi như thế này -

const arr = [
   'iLoveProgramming',
   'thisisalsoastrig',
   'Javascriptisfun',
   'helloworld',
   'canIBeTheLongest',
   'Laststring'
];

Chúng tôi được yêu cầu viết một hàm JavaScript có trong một mảng chuỗi như vậy. Mục đích của hàm của chúng ta là chọn tất cả chuỗi dài nhất (nếu có nhiều hơn một).

Cuối cùng, hàm sẽ trả về một mảng gồm tất cả các chuỗi dài nhất trong mảng.

Ví dụ

Sau đây là mã -

const arr = [
   'iLoveProgramming',
   'thisisalsoastrig',
   'Javascriptisfun',
   'helloworld',
   'canIBeTheLongest',
   'Laststring'
];
const getLongestStrings = (arr = []) => {
   return arr.reduce((acc, val, ind) => {
      if (!ind || acc[0].length < val.length) {
         return [val];
      }
      if (acc[0].length === val.length) {
         acc.push(val);
      }
      return acc;
   }, []);
};
console.log(getLongestStrings(arr));

Đầu ra

Sau đây là kết quả trên bảng điều khiển -

[ 'iLoveProgramming', 'thisisalsoastrig', 'canIBeTheLongest' ]