Làm cách nào để viết hàm bản đồ trong JavaScript?

Phương thức Javascript map() trong JavaScript tạo một mảng bằng cách gọi một hàm cụ thể trên từng phần tử có trong mảng cha. Đó là một phương pháp không đột biến. Nói chung, phương thức map() được sử dụng để lặp qua một mảng và gọi hàm trên mọi phần tử của mảng.  

cú pháp

// Arrow function
map((element) => { /* … */ })
map((element, index) => { /* … */ })
map((element, index, array) => { /* … */ })

// Callback function
map(callbackFn)
map(callbackFn, thisArg)

// Inline callback function
map(function (element) { /* … */ })
map(function (element, index) { /* … */ })
map(function (element, index, array) { /* … */ })
map(function (element, index, array) { /* … */ }, thisArg)

Thông số. Phương thức này chấp nhận hai tham số như đã đề cập ở trên và được mô tả bên dưới

  • chức năng (giá trị hiện tại, chỉ mục, mảng). Nó là tham số bắt buộc và nó chạy trên từng phần tử của mảng. Nó chứa ba tham số được liệt kê dưới đây
    • giá trị hiện tại. Nó là một tham số bắt buộc và nó giữ giá trị của phần tử hiện tại
    • mục lục. Nó là một tham số tùy chọn và nó giữ chỉ mục của phần tử hiện tại
    • mảng. Nó là một tham số tùy chọn và nó chứa mảng
  • giá trị này. Nó là một tham số tùy chọn và được sử dụng để giữ giá trị được truyền cho hàm

Giá trị trả về. Nó trả về một mảng mới và các phần tử của mảng là kết quả của hàm gọi lại.  

Các ví dụ dưới đây minh họa việc sử dụng phương thức array map() trong JavaScript.  

ví dụ 1. Ví dụ này sử dụng phương thức array map() và trả về bình phương của phần tử mảng.  

Javascript




var arr = [2, 5, 6, 3, 8, 9];

 

var newArr = arr.map(function(val, index){

    

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
0
['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
1

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
2

 

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
3

đầu ra

Làm cách nào để viết hàm bản đồ trong JavaScript?

 

ví dụ 2. Ví dụ này sử dụng phương thức array map() để nối ký tự 'A' với mọi ký tự của tên.  

Javascript




var

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
5_______1_______6
['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
7

 

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
8

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
9

var

36, 49, 16, 25
1function
36, 49, 16, 25
3

    1_______0

36, 49, 16, 25
6
36, 49, 16, 25
7
['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
7

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
2

 

var0

đầu ra.  

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']

ví dụ 3. Ví dụ này sử dụng phương thức array map() để trả về bình phương của các phần tử mảng.  

Javascript




var1

var2

var3

    

['PA', 'aA', 'nA', 'kA', 'aA', 'jA']
0 var6

var7

đầu ra

36, 49, 16, 25

Chúng tôi có danh sách đầy đủ các phương thức Mảng Javascript, để kiểm tra các phương thức đó, vui lòng xem qua bài viết Mảng Javascript đầy đủ này .

Trình duyệt được hỗ trợ. Các trình duyệt được phương thức JavaScript Array keys() hỗ trợ được liệt kê bên dưới

  • Google Chrome 38. 0
  • Microsoft Cạnh 12. 0
  • Mozilla Firefox 28. 0
  • Safari8. 0
  • Opera 25. 0

Chúng tôi có một Cheat Sheet về Javascript, nơi chúng tôi đề cập đến tất cả các chủ đề quan trọng của Javascript để kiểm tra những chủ đề đó, vui lòng xem qua Javascript Cheat Sheet-Hướng dẫn cơ bản về JavaScript

JavaScript được biết đến nhiều nhất để phát triển trang web nhưng nó cũng được sử dụng trong nhiều môi trường không có trình duyệt. Bạn có thể học JavaScript từ đầu bằng cách làm theo Hướng dẫn JavaScript và Ví dụ về JavaScript này

Vì vậy, chúng ta có thể kết luận rằng, đối với mỗi giá trị của mảng, hàm được thực thi. Và hàm có quyền truy cập vào 3 đối số

  • Phần tử hiện tại được xử lý
  • Chỉ mục của phần tử hiện tại
  • Toàn bộ mảng

Chúng tôi đang trả vềval*2 trên mỗi lần lặp lại và điều đó được lưu trữ trongmapResult
Vì vậy,_______41_______ có [2,4,6] trong đó và điều này sẽ không sửa đổi mảng ban đầusample

Do đó, bất cứ thứ gì được trả về bởi bản đồ trong mỗi lần lặp lại, sẽ được lưu trữ bên trong một mảng hoàn toàn mới và mảng ban đầu vẫn chưa được xử lý

Ghi chú. Nếu không có gì được trả về từ hàm thì_______20_______0 sẽ được lưu trữ trong mảng đầu ra. Và độ dài của mảng này sẽ giống như độ dài của mảng mà bản đồ được thực hiện

Nếu chúng tôi không trả lại bất cứ thứ gì trong ví dụ trước thì,

Làm cách nào để viết hàm bản đồ trong JavaScript?

const sample = [1,2,3];
const mapResult = sample.map(function(val, index, array) {
    console.log('val :', val, 'index :', index, 'array :', array);
    return (val * 2);
});
1 sẽ luôn trả về một mảng. Vì vậy, chúng tôi không phải viết một lợi nhuận rõ ràng từ một Mảng. map, đó là lý do tại sao chúng tôi sử dụng map hầu hết thời gian để lặp qua các danh sách trong React

Làm cách nào để tạo chức năng bản đồ trong JavaScript?

Hãy xem hướng dẫn từng bước về cách tạo chức năng bản đồ của riêng chúng tôi. .
Tạo một mảng trống mapArr
Lặp qua các phần tử mảng
Gọi hàm mapFunc với phần tử hiện tại làm đối số
Đẩy kết quả của hàm mapFunc vào mảng mapArr
Trả về mảng mapArr sau khi đi qua tất cả các phần tử

Có chức năng bản đồ trong JavaScript không?

Phương thức map() Javascript trong JavaScript tạo một mảng bằng cách gọi một hàm cụ thể trên từng phần tử có trong mảng cha . Đó là một phương pháp không đột biến. Nói chung, phương thức map() được sử dụng để lặp qua một mảng và gọi hàm trên mọi phần tử của mảng.

bản đồ trong JavaScript với ví dụ là gì?

Bản đồ là tập hợp các phần tử trong đó mỗi phần tử được lưu trữ dưới dạng một cặp Khóa, giá trị . Đối tượng bản đồ có thể chứa cả đối tượng và giá trị nguyên thủy dưới dạng khóa hoặc giá trị. Khi chúng ta lặp lại đối tượng bản đồ, nó sẽ trả về cặp khóa, giá trị theo cùng thứ tự như đã chèn.

Bản đồ () có phải là một chức năng không?

Python's map() là một chức năng tích hợp sẵn cho phép bạn xử lý và chuyển đổi tất cả các mục trong một lần lặp mà không cần sử dụng hàm rõ ràng . map() rất hữu ích khi bạn cần áp dụng hàm chuyển đổi cho từng mục trong một lần lặp và biến chúng thành một lần lặp mới.