Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ฟังก์ชัน Map.forEach() ใน JavaScript

ฟังก์ชัน forEach() ของออบเจกต์ Map ใช้วนลูปผ่านคู่คีย์-ค่า (key-value pairs) ทั้งหมดใน Map และเรียกใช้ฟังก์ชัน callback สำหรับแต่ละคู่

ไวยากรณ์

mapObj.forEach(callbackFn[, thisArg])

ตัวอย่าง

<html> <head>    <title>JavaScript Example</title> </head> <body>    <script type="text/javascript">       var mapObj = new Map();       mapObj.set('1', 'Java');       mapObj.set('2', 'JavaFX');       mapObj.set('3', 'HBase');       mapObj.set('4', 'Neo4j');       function show(value, key, map) {          document.write(key + ': ' + value);          document.write("<br>");       }       mapObj.forEach(show);    </script> </body> </html>

ผลลัพธ์

1: Java 2: JavaFX 3: HBase 4: Neo4j

พารามิเตอร์ของ callback function:

  • value - ค่าของแต่ละรายการ
  • key - คีย์ของแต่ละรายการ
  • map - ออบเจกต์ Map ที่กำลังวนลูป

ข้อแตกต่างจาก Array.forEach():

  • Map เรียงลำดับตามลำดับที่เพิ่มเข้าไป (insertion order)
  • ไม่สามารถ break/continue ได้ (ต้องใช้ for...of แทน)
  • callback ได้รับ (value, key, map) ไม่ใช่ (element, index, array)