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
Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Hàm forEach() trong Javascript

Trong bài này mình sẽ nói về hàm forEach trong javascript, đây là hàm dùng để lặp qua các phần tử của mảng một cách dễ dàng.

Hàm forEach sẽ lần lượt truyền các phần tử của mảng vào một hàm được cung câp trước đó, hàm này sẽ tiến hành xử lý các thành phần tử cửa mảng như là một tham số truyền vào.

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.

1. Hàm forEach trong Javascript là gì?

forEach javascript là một phương thức thuộc đối tượng mảng trong javascript. Hàm này sẽ giúp lặp qua các phần tử của mảng, nó có một tham số truyền vào, và tham số này sẽ lưu trữ giá trị của phần tử trong mỗi lần lặp.

Hàm forEach sẽ không thực hiện đối với những phần tử không có giá trị.

Cú pháp như sau:

 array.forEach(function(currentValue, index, arr), thisValue)

Trong đó:

  • currentValue - giá trị của phần tử hiện tại.
  • index - chỉ số của phần tử hiện tại.
  • arr - mảng mà phần tử hiện tại thuộc về.
  • thisValue - tham số không bắt buộc. Nếu được truyền vào thì thisValue sẽ được sử dụng làm giá trị this. Nếu không được truyền vào thì giá trị "this" là "undefined".

Thực ra thì bạn hoàn toàn có thể sử dụng vòng lặp for, nhưng javascript đã cung cấp phương thức forEach rồi nên từ giờ bạn sẽ có thêm một sự lựa chọn.

Ví dụ: Lặp qua và in giá trị của các phần tử trong mảng ranks.

let ranks = ['A', 'B', 'C'];

ranks.forEach(function (e) {
    console.log(e); // A B C
});

Với bài này thì bạn có thể sử dụng vòng lặp for như sau:

let ranks = ['A', 'B', 'C'];
for (let i = 0; i < ranks.length; i++) {
    console.log(ranks[i]);
}

2. Sử dụng arrow function trong hàm forEach

Ngoài cách viết function bình thường như trên thì bạn có thể sử dụng arrow function trong es6.

let ranks = ['A', 'B', 'C'];

ranks.forEach((e) => {
    console.log(e);
});

3. Sử dụng this trong hàm callback của forEach

Trước tiên hãy xét ví dụ dưới đây.

let ranks = ['A', 'B', 'C'];

ranks.forEach(function (e) {
    console.log(this); // window object
});

Nếu chạy trong chế độ bình thường thì con trỏ this chính là đối tượng window, nhưng nếu chạy trong chế độ strict mode thì nó sẽ là undefined. Nếu bạn muốn biết rõ hơn vê con trỏ this thì hãy xem trong bài viết hiểu rõ về this trong Javascript.

Bây giờ mình muốn con trỏ this chính là biến ranks thì làm bằng cách nào? Rất đơn giản, hãy sử dụng tham số thisValue mà mình đã giới thiệu ở phần 1.

let ranks = ['A', 'B', 'C'];

ranks.forEach(function (e) {
    console.log(this); // ranks
}, ranks);

Chạy ví dụ này lên thì this chính là biến ranks.

Tuy nhiên, nếu bạn sử dụng arrow function thì đối tượng this không tồn tại nhé các bạn.

let ranks = ['A', 'B', 'C'];

ranks.forEach((e) => {
    console.log(this); // window object
}, ranks);

4. Một ví dụ khác nữa về forEach javascript

Ví dụ: sử dụng hàm forEach để in ra các phần tử của mảng.

Code RUN
demoP = document.getElementById("demo");
var numbers = [4, 9, 16, 25];

function myFunction(item, index) {
    demoP.innerHTML = demoP.innerHTML + "index[" + index + "]: " + item + "<br>"; 
}

Trên là cách sử dụng hàm foreach trong javascript. Qua bài này bạn phải nắm bắt cú pháp nói chung và những tham số truyền vào của hàm forEach. Để lặp qua các phần tử của mảng thì có rất nhiều giải pháp, và tùy vào từng trường hợp mà bạn hãy chọn một giải pháp phù hợp.

Cùng chuyên mục:

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

Cách dùng insertBefore trong javascript

Cách dùng insertBefore trong javascript

Cách dùng insertAfter trong Javascript

Cách dùng insertAfter trong Javascript

Cách dùng parentNode trong Javascript

Cách dùng parentNode trong Javascript

Cách dùng parentElement trong Javascript

Cách dùng parentElement trong Javascript

Tính tổng các phần tử trong mảng javascript

Tính tổng các phần tử trong mảng javascript

Tính tổng hai số bằng Javascript (cộng hai số)

Tính tổng hai số bằng Javascript (cộng hai số)

Cách gán giá trị cho thẻ input trong javascript

Cách gán giá trị cho thẻ input trong javascript

Để gán giá trị cho thẻ input thì ta có hai cách, thứ nhất là…

Cách kiểm tra số nguyên âm trong javascript

Cách kiểm tra số nguyên âm trong javascript

Cách kiểm tra số nguyên dương trong javascript

Cách kiểm tra số nguyên dương trong javascript

Hàm closure trong javascript

Hàm closure trong javascript

Closure là một khái niệm không phải ai cũng ..

Biểu thức chính quy RegEx trong Javascript

Biểu thức chính quy RegEx trong Javascript

Bài này chúng ta sẽ tìm hiểu đến chuỗi và cách sử dụng biểu thức…

Cách dùng Import / Export Module trong javascript

Cách dùng Import / Export Module trong javascript

Khi bạn xây dựng một ứng dụng nhỏ thì việc đặt

Cơ chế hoạt động của hoisting trong Javascript

Cơ chế hoạt động của hoisting trong Javascript

Hoisting là vấn đề liên quan đến cách khai báo biến trong Javascript. Nó liên…

Cấp độ private / protected của class trong Javascript

Cấp độ private / protected của class trong Javascript

Top