Bộ lọc mảng JavaScript ()
ví dụ 1
Trả về một mảng tất cả các giá trị trong độ tuổi [] từ 18 trở lên:
const ages = [32, 33, 16, 40];
const result = ages.filter(checkAdult);
function checkAdult(age) {
return age >= 18;
}
Định nghĩa và Cách sử dụng
Phương filter()
thức tạo một mảng mới chứa đầy các phần tử vượt qua bài kiểm tra do một hàm cung cấp.
Phương filter()
thức không thực thi chức năng cho các phần tử trống.
Phương filter()
thức không thay đổi mảng ban đầu.
Cú pháp
array.filter(function(currentValue, index, arr), thisValue)
Thông số
Parameter | Description |
function() | Required. A function to run for each array element. |
currentValue | Required. The value of the current element. |
index | Optional. The index of the current element. |
arr | Optional. The array of the current element. |
thisValue | Optional. Default undefined A value passed to the function as its this value. |
Giá trị trả lại
Loại | Sự miêu tả |
Một mảng |
Chứa các yếu tố vượt qua bài kiểm tra. Nếu không có phần tử nào vượt qua bài kiểm tra, nó sẽ trả về một mảng trống. |
Hỗ trợ trình duyệt
filter()
là một tính năng ECMAScript5 (ES5).
ES5 (JavaScript 2009) được hỗ trợ đầy đủ trong tất cả các trình duyệt:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | 9-11 | Yes | Yes | Yes | Yes |
Ví dụ 2
Trả lại các giá trị trong độ tuổi [] trên một số cụ thể:
<p><input type="number" id="ageToCheck" value="30"></p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
const ages = [32, 33, 12, 40];
function checkAge(age) {
return age > document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.filter(checkAge);
}
</script>