ARRAY FUNCTION
NUMBER FUNCTION
STRING FUNCTION
DATE / TIME FUNCTION
MATH FUNCTION
GLOBAL FUNCTION
BOOLEAN FUNCTION
DOM FUNCTION
appendChild Javascript parentElement Javascript parentNode Javascript insertAfter Javascript insertBefore javascript innerHTML Javascript insertAdjacentHTML javascript nextSibling javascript activeElement Javascript adoptNode Javascript anchors Javascript baseURI Javascript Document.body Javascript characterSet Javascript createAttribute Javascript Hàm document.createComment() trong Javascript Hàm document.createDocumentFragment() trong Javascript Hàm document.createElement() trong Javascript Hàm document.createTextNode() trong Javascript Hàm document.doctype trong Javascript Hàm document.documentElement trong Javascript Hàm document.documentMode trong Javascript Hàm document.documentURI trong Javascript Hàm document.domain trong Javascript Hàm document.embeds trong Javascript Hàm document.forms trong Javascript Hàm document.hasFocus() trong Javascript Hàm document.head trong Javascript Hàm document.images trong Javascript Hàm document.implementation trong Javascript Hàm document.importNode() trong Javascript Hàm document.inputEncoding trong Javascript Hàm document.lastModified trong Javascript Hàm document.links trong Javascript Hàm document.normalize() trong Javascript Hàm document.scripts trong Javascript Hàm document.querySelector() trong Javascript Hàm document.readyState trong Javascript Hàm document.removeEventListener() trong Javascript Hàm document.querySelectorAll() trong Javascript Hàm document.title trong Javascript Hàm document.URL trong Javascript Hàm document.write() trong Javascript Hàm document.writeln() trong Javascript Hàm document.getElementById() trong Javascript Hàm document.getElementsByClassName() trong Javascript Hàm document.getElementsByName() trong Javascript Hàm document.getElementsByTagName() trong Javascript
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Cách dùng Array filter() trong Javascript

Trong bài này chúng ta sẽ tìm hiểu hàm filter trong javascript, đây là hàm dùng để lặp qua các phần tử trong mảng, dùng để lọc các phần tử trong mảng theo một điều kiện nào đó.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Hàm filter được tích hơp sẵn trong đối tượng mảng giống như hàm map trong javascript. Về cách thức hoạt động thì nó giống hàm map, nghĩa là nó sẽ có một tham số dạng function và function này sẽ xử lý cho mỗi lần lặp. Nếu function return true thì phần tử lần lặp đó được chấp nhận, ngược lại sẽ không được chấp nhận.

1. Filter trong javascript là gì?

Filter trong Javascript là một phương thức thuộc đối tượng mảng. Nó có công dụng đúng ý nghĩa với tên gọi của nó, tức là sẽ lặp qua qua các phần tử, sau đó tùy vào từng bài toán mà sẽ quyết định chọn phần tử đó hay không. Cuối cùng hàm này sẽ trả về một mảng các phần tử đã chọn.

Cú pháp của filter trong js như sau:

Bài viết này được đăng tại [free tuts .net]

objectArray.filter(function(value){
    return true / false;
});

Nếu return true thì phẩn tử được chọn, ngược lại return false thì phần tử không được chọn. Còn value chính là giá trị của mỗi phần tử trong mỗi lần lặp.

Ví dụ 1: Dùng dụng hàm filter với lệnh return true.

var numbers = [100, 200, 300, 400, 500];

var selected_number = numbers.filter(function(value){
    return true;
});

console.log(selected_number);// 100, 200, 300, 400, 500

Như bạn thấy, mảng mới có tổng số phần tử và giá trị của chúng không khác gì mảng cũ.

Ví dụ 2: Dùng hàm filter với lệnh return false.

var numbers = [100, 200, 300, 400, 500];

var selected_number = numbers.filter(function(value){
    return false;
});

console.log(selected_number); // Rỗng

Kết quả trả về một mảng không có phần tử nào, lý do là ta đã return false cho mọi tường hợp.

Ví dụ 3: Tạo mảng mới từ mnagr numbers và bỏ đi phần tử 300.

var numbers = [100, 200, 300, 400, 500];

var selected_number = numbers.filter(function(value){
    if (value == 300){
        return false;
    }
    return true;
});

console.log(selected_number); // 100, 200, 400, 500

Kết quả là phần tử có giá trị 300 đã biến mất.

2. Ví dụ hàm filter trong javascript

Ta sẽ làm thêm một ví dụ nữa để giúp các bạn dễ hình dung hơn nhé.

Ví dụ: Lấy các phần tử chẵn trong mảng cho trước.

Với bài này thì ta có hai cách, thứ nhất là sử dụng hàm filter, và thứ hai là sử dụng vòng lặp for.

Cách 1: Sử dụng hàm filter

var numbers = [5, 10, 20, 22, 60, 75, 90];

var new_numbers = numbers.filter(function(item){
    return (item % 2 == 0);
});

console.log(new_numbers);
// Kết quả: [10, 20, 22, 60, 90]

Cách 2: Sử dụng vòng lặp for

Một cách giải khác sử dụng vòng lặp for.

var numbers = [5, 10, 20, 22, 60, 75, 90];
var new_numbers = [];
for (var i = 0; i < numbers.length; i++){
    if (numbers[i] % 2 == 0){
        new_numbers.push(numbers[i]);
    }
}
console.log(new_numbers);
// Kết quả: [10, 20, 22, 60, 90]

3. Lời kết

Như vậy là mình đã hướng dẫn xong cách sử dụng vòng lặp foreach trong Javascript. Lưu ý là hàm này ta chỉ có thể sử dụng với mảng thôi nhé. Nếu bạn muốn sử dụng với đối tượng object thì tham khảo vòng lặp forEach nhé.

Cùng chuyên mục:

Functional Programming là gì? Tại sao và khi nào bạn nên sử dụng trong JavaScript

Functional Programming là gì? Tại sao và khi nào bạn nên sử dụng trong JavaScript

Những tính năng mới trong ES6+ trong JavaScript

Những tính năng mới trong ES6+ trong JavaScript

4 cách tránh memory leaks trong JavaScript

4 cách tránh memory leaks trong JavaScript

Capturing và bubbling Event trong Javascript

Capturing và bubbling Event trong Javascript

Phân biệt prototype và __proto__ trong JavaScript

Phân biệt prototype và __proto__ trong JavaScript

Cách hoạt động của Event Loop trong JavaScript

Cách hoạt động của Event Loop trong JavaScript

Phương thức bind(), call(), và apply() trong JavaScript

Phương thức bind(), call(), và apply() trong JavaScript

Cách khắc phục lỗi

Cách khắc phục lỗi "hoisting" trong JavaScript

Sử dụng Promise.all và Promise.race để quản lý các Promise trong JavaScript

Sử dụng Promise.all và Promise.race để quản lý các Promise trong JavaScript

Xử lý bất đồng bộ bằng vòng lặp for-await trong JavaScript

Xử lý bất đồng bộ bằng vòng lặp for-await trong JavaScript

Sự khác biệt giữa Promise, Callback và Async/Await trong JavaScript

Sự khác biệt giữa Promise, Callback và Async/Await trong JavaScript

Cách sử dụng Async functions trong JavaScript

Cách sử dụng Async functions trong JavaScript

Hàm String isspace() trong Python

Hàm String isspace() trong Python

Cách tạo số ngẫu nhiên trong Javascript

Cách tạo số ngẫu nhiên trong Javascript

Hướng dẫn cách tạo một số ngẫu nhiên ...

Cách gộp hai object javascript lại với nhau

Cách gộp hai object javascript lại với nhau

Cách lấy chiều dài của object trong Javascript

Cách lấy chiều dài của object trong Javascript

Hướng dẫn giải phương trình bậc 1 bằng Javascript

Hướng dẫn giải phương trình bậc 1 bằng Javascript

Cách dùng nextSibling trong javascript

Cách dùng nextSibling trong javascript

Cách dùng insertAdjacentHTML trong javascript

Cách dùng insertAdjacentHTML trong javascript

Cách dùng innerHTML trong Javascript

Cách dùng innerHTML trong Javascript

Top