Hướng dẫn dùng array.map javascript trong PHP

Hàm array_map[] sẽ lặp tất cả các phần tử của mảng và truyền vào hàm callback định nghĩa trước đó của người dùng. Hàm callback sẽ coi các phần từ của mảng như là những tham số và nó sẽ lặp lại cho đến khi tất cả các phần tử của mảng đã được truyền vào.

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

Cú pháp

Cú pháparray_map[$func, $arr1, $arr2 ...];

Trong đó:

  • $func là hàm do người dùng định nghĩa sẽ nhận các phần tử truyền vào là các phần tử của $arr1, $arr2...
  • $arr1, $arr2 ... là các mảng dữ liệu truyền vào.

Ví dụ

Code

function show[$name, $age]{
	echo 'tên của tôi là ' . $name . ', tôi ' . $age . ' tuổi
'; } $name = [ 'Minh', 'Peter', 'John' ]; $age = [ 21, 23, 45 ]; array_map['show', $name, $age];

Kết quả

tên của tôi là Minh, tôi 21 tuổi
tên của tôi là Peter, tôi 23 tuổi
tên của tôi là John, tôi 45 tuổi

Tham khảo: php.net

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

Trong bài này chúng ta sẽ tìm hiểu hàm map trong javascript, đây là hàm dùng để lặp qua các phần tử của mảng và cho phép xử lý giá trị của phần tử đó.

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

Javascript map là một hàm dành cho đối tượng mảng trong javascript, 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ử của mảng, 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ử đó.

1. Cú pháp hàm map trong javascript

Cú pháp: Cú pháp chung của hàm map[]

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

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ử
}];

Giá trị trả về của hàm map trong js là một mảng mới, với số lượng phần tử bằng với mảng cũ, nhưng giá trị của các phần tử thì được quyết định bởi lệnh return của hàm map.

Chúng ta sẽ bắt đầu bằng một ví dụ khá cơ bản, đó là lặp và in ra các phần tử trong mảng.

var domain = [
    "freetuts.net", 
    "techtuts.net", 
    "simpletutorials.org"
];

domain.map[function[item]{
    console.log[item];
}];

Kết quả:

freetuts.net
techtuts.net
simpletutorials.org

2. Hàm map với tham số là arrow function

Ở ví dụ trên mình đã truyền vào một anonymous function. Tuy nhiên, bạn hoàn toàn có thể sử dụng arrow function trong es6 để truyền vào tham số của hàm map.

Như ví dụ ở phần 1 thì mình sẽ viết lại như sau:

var domain = [
    "freetuts.net", 
    "techtuts.net", 
    "simpletutorials.org"
];

domain.map[[item] => {
    console.log[item];
}];

Kết quả không khác so với ví dụ trên.

3. Cách dùng hàm map trong javascript

Chúng ta sẽ giải một bài toán như sau: Hãy viết chương trình thay đổi gấp đôi giá trị của các phần tử trong mảng dưới đây.

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

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 rất nhiều.

Cách 1: Giải bằng hàm map 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]

Như bạn thấy, mảng new_number có giá trị mới gấp đôi với giá trị của mảng cũ.

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

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

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]

4. Lời kết

Trên là cú pháp và cách sử dụng hàm map trong javascript. Bạn phải lưu ý rằng hàm này chỉ được dùng để lặp qua các phần tử của mảng, bởi map là một phương thức của đối tượng array.

Nếu bạn muốn lặp qua một object thì hãy sử dụng vòng lặp forEach trong javascript để thay thế nhé.

Chủ Đề