Bộ lọc mảng Javascript ()

Phương thức JavaScript Array filter () trả về một mảng mới với tất cả các phần tử vượt qua bài kiểm tra được xác định bởi hàm đã cho.

Cú pháp của filter()phương thức là:

 arr.filter(callback(element), thisArg)

Ở đây, arr là một mảng.

filter () Tham số

Các filter()phương pháp có trong:

  • callback - Hàm kiểm tra để thực thi trên mỗi phần tử mảng; trả về truenếu phần tử vượt qua thử nghiệm, khác false. Nó có:
    • phần tử - Phần tử hiện tại đang được truyền từ mảng.
  • thisArg (tùy chọn) - Giá trị được sử dụng thiskhi thực hiện lệnh gọi lại. Theo mặc định, nó là undefined.

Trả về giá trị từ bộ lọc ()

  • Trả về một mảng mới chỉ có các phần tử đã vượt qua bài kiểm tra.

Ghi chú :

  • filter() không thay đổi mảng ban đầu.
  • filter()không thực thi callbackcho các phần tử mảng không có giá trị.

Ví dụ 1: Lọc ra các giá trị từ Mảng

 const prices = (1800, 2000, null, 3000, 5000, "Thousand", 500, 8000) function checkPrice(element) ( return element> 2000 && !Number.isNaN(element); ) let filteredPrices = prices.filter(checkPrice); console.log(filteredPrices); // ( 3000, 5000, 8000 ) // using arrow function let newPrices = prices.filter((price) => (price> 2000 && !Number.isNaN(price))); console.log(newPrices); // ( 3000, 5000, 8000 )

Đầu ra

 (3000, 5000, 8000) (3000, 5000, 8000)

Ở đây, tất cả các số nhỏ hơn hoặc bằng 2000 và tất cả các giá trị không phải số đều được lọc ra.

Ví dụ 2: Tìm kiếm trong Mảng

 const languages = ("JavaScript", "Python", "Ruby", "C", "C++", "Swift", "PHP", "Java"); function searchFor(arr, query) ( function condition(element) ( return element.toLowerCase().indexOf(query.toLowerCase()) !== -1; ) return arr.filter(condition); ) let newArr = searchFor(languages, "ja"); console.log(newArr); // ( 'JavaScript', 'Java' ) // using arrow function const searchArr = (arr, query) => arr.filter(element => element.toLowerCase().indexOf(query.toLowerCase()) !== -1); let newLanguages = searchArr(languages, "p"); console.log(newLanguages); // ( 'JavaScript', 'Python', 'PHP' )

Đầu ra

 ('JavaScript', 'Java') ('JavaScript', 'Python', 'PHP')

Ở đây, cả phần tử và truy vấn đều được chuyển đổi thành chữ thường và phương thức indexOf () được sử dụng để kiểm tra xem truy vấn có xuất hiện bên trong phần tử hay không. Những yếu tố không vượt qua bài kiểm tra này được lọc ra.

Đề xuất đọc: Bản đồ mảng JavaScript ()

thú vị bài viết...