Javascript Function: Array.map()

Hàm map() trong Javascript là một hàm dành cho đối tượng array, hàm này có công dụng tương tự như vòng lăp forEach.

Hàm map() sẽ lặp qua từng phần tử và tham số truyền vào là một anonymous function, hàm anonymous sẽ có một tham số truyền vào và đó chính là phần tử của mỗi vòng lặp, bên trong thân hàm anonymouse sẽ có lệnh return về một giá trị và giá trị này sẽ thay thế cho phần tử đó.

Cú pháp: Cú pháp chung của hàm map()

array.map(function(item){
    // item chính là phần tử đang lặp
    return item; // giá trị trả về sẽ thay thế cho giá trị ban đầu của phần tử
});

Ví dụ: Cho một mảng như sau:

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

Hãy viết chương trình nhân đôi các giá trị của mỗi phần tử trong mảng numbers.

Sử dụng hàm map()

Thực ra bài này bạn hoàn toàn có thể sử dụng vòng lặp for, vòng lặp while hay một vòng lặp bất kì, tuy nhiên nếu bạn sử dụng hàm map thì bài toán sẽ trở nên đơn giản hơn. Cách giải như sau:

var numbers = [5, 10, 20, 22, 60];
var new_number = numbers.map(function(item){
    return item * 2; // nhân đôi giá trị
});

console.log(new_number);
// Kết quả: [10, 20, 40, 44, 120]

Sử dụng vòng lặp

Sau đây là giải bằng cách sử dụng vòng lặp.

var numbers = [5, 10, 20, 22, 60];
for (var i = 0; i < numbers.lenght; i++){
    numbers[i] = numbers[i] * 2;
}

console.log(numbers);
// Kết quả: [10, 20, 40, 44, 120]

Rất đơn giản phải không các bạn.

Nguồn: freetuts.net