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

Lọc mảng bằng cách sử dụng ký tự chuỗi đầu tiên trong JavaScript

Giả sử chúng ta có một mảng chứa tên của một số người như sau:

const arr = ['Amy','Dolly','Jason','Madison','Patricia'];

Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi như đối số đầu tiên và hai ký tự chữ cái viết thường làm đối số thứ hai và thứ ba. Sau đó, hàm của chúng ta sẽ lọc mảng để chỉ chứa những phần tử bắt đầu bằng các bảng chữ cái nằm trong phạm vi được chỉ định bởi đối số thứ hai và thứ ba.

Do đó, nếu đối số thứ hai và thứ ba lần lượt là 'a' và 'j', thì kết quả đầu ra phải là -

const output = ['Amy','Dolly','Jason'];

Ví dụ

Hãy để chúng tôi viết mã -

const arr = ['Amy','Dolly','Jason','Madison','Patricia'];
const filterByAlphaRange = (arr = [], start = 'a', end = 'z') => {
   const isGreater = (c1, c2) => c1 >= c2;
   const isSmaller = (c1, c2) => c1 <= c2;
   const filtered = arr.filter(el => {
      const [firstChar] = el.toLowerCase();
      return isGreater(firstChar, start) && isSmaller(firstChar, end);
   });
   return filtered;
};
console.log(filterByAlphaRange(arr, 'a', 'j'));

Đầu ra

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

[ 'Amy', 'Dolly', 'Jason' ]