Map ใน JavaScript คืออะไร?

  •  Map เป็นโครงสร้างข้อมูลใน JavaScript ซึ่งอนุญาตให้จัดเก็บคู่ [คีย์ค่า] ซึ่งค่าใด ๆ สามารถใช้เป็นคีย์หรือค่าได้
  • คีย์และค่าในการรวบรวม ของ mapอาจเป็นประเภทใดก็ได้และหากมีการเพิ่มค่าลงในการเก็บ map โดยใช้ key ที่มีอยู่แล้วในการรวบรวมแล้วค่าใหม่จะแทนที่ค่าเก่า
  • การวนซ้ำขององค์ประกอบในวัตถุ map เสร็จสิ้นในลำดับการแทรกและลูป“  For…” จะส่งคืนอาร์เรย์ของคู่ [คีย์ค่า] ทั้งหมดสำหรับการวนซ้ำแต่ละครั้ง

ความแตกต่างระหว่างวัตถุและ map ใน JavaScript
โครงสร้างข้อมูลทั้งสองนี้มีความคล้ายคลึงกันในหลาย ๆ วิธีเช่นทั้งค่าที่เก็บโดยใช้คีย์อนุญาตให้เรียกใช้ค่าเหล่านั้นได้โดยใช้คีย์การลบคีย์ อย่างไรก็ตามมีความแตกต่างอย่างมากระหว่างวัตถุและ map ใน JavaScript ซึ่งทำให้การใช้ map เป็นตัวเลือกที่ดีและดีกว่าในหลายกรณี

  • ปุ่มที่ใช้ใน map สามารถเป็นค่าประเภทใดก็ได้เช่นฟังก์ชั่นวัตถุ ฯลฯ ในขณะที่ปุ่มในวัตถุนั้น จำกัด อยู่ที่สัญลักษณ์และสตริง
  • ขนาดของ map สามารถทราบได้ง่ายโดยใช้คุณสมบัติขนาด แต่ในขณะที่จัดการกับวัตถุขนาดจะต้องกำหนดด้วยตนเอง
  • map ควรเป็นที่ต้องการในกรณีที่ความต้องการเกี่ยวข้องกับการเพิ่มและการลบคู่ [คีย์, ค่า] เนื่องจาก map เป็นชนิดข้อมูลซ้ำและสามารถทำซ้ำได้โดยตรงในขณะที่วนวัตถุต้องได้รับกุญแจในลักษณะที่เฉพาะเจาะจง

Method Map.delete () ใน JavaScript 
Map.delete () ใน JavaScript จะใช้ในการลบ  Elements (อีลีเมนท์ ที่ระบุในองค์ประกอบทั้งหมดที่มีอยู่ใน map

เมธอด Map.delete () ใช้คีย์ที่ต้องการลบออกจาก map ดังนั้นจะลบองค์ประกอบที่เกี่ยวข้องกับคีย์นั้นและคืนค่าจริง หากคีย์ไม่ปรากฏขึ้นก็จะส่งกลับเท็จ

การใช้งาน:

  • Map.delete () ใช้เพื่อลบองค์ประกอบที่เกี่ยวข้องกับคีย์ท่ามกลางองค์ประกอบทั้งหมดที่มีอยู่ใน map   

ตัวอย่างโค้ด

<script> 
// creating a map object 
var my_map = new Map(); 

// Adding [key, value] pair to the map 
my_map.set(1, 'first'); 
my_map.set(2, 'second'); 
my_map.set(3,'third'); 
my_map.set(4,'fourth'); 

// will display true as key '3' 
// is present and its associated 
// element is removed as well 
document.write(my_map.delete(3),"</br>","</br>"); 


// elements left in the map after deletion 
document.write("key-value pair of the map", 
				" after deletion-","</br>"); 

my_map.forEach(function (item, key, mapObj) 
{ 
	document.write(key.toString(),":", 
				" ",item.toString() + "<br />"); 
}); 

</script>						 

ผลลัพธ์ที่ได้

true

key-value pair of the map after deletion-
1: first
2: second
4: fourth

ข้อผิดพลาดและข้อยกเว้น:

  • ถ้า key pass เป็นอาร์กิวเมนต์ของฟังก์ชันนั้นไม่มีอยู่ใน map ดังนั้นมันจะส่งคืนค่าเท็จ โดยทั่วไปจะไม่ส่งข้อยกเว้นใด ๆ หรือไม่มีข้อผิดพลาด

ความแตกต่างในการทำงานของ Map.clear (), Map.erase () และฟังก์ชั่นนี้
  Map.clear () ลบคู่ค่าคีย์ทั้งหมดของ map และลดขนาดของ map เป็นศูนย์ โดยที่ Map.erase () ลบค่าที่แม็พที่ระบุซึ่งคีย์ถูกส่งผ่านเป็นอาร์กิวเมนต์หรือตัววนซ้ำหรืออยู่ในช่วงเพื่อลบคู่

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : JAVASCRIPT

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
มีหนังสือ แนะนำ Developing Extensions for Joomla! 5
โดย mindphp พ 10 ม.ค. 2024 2:52 pm บอร์ด MindPHP News & Feedback
0
295
พ 10 ม.ค. 2024 2:52 pm โดย mindphp View Topic มีหนังสือ แนะนำ Developing Extensions for Joomla! 5
Google Chrome เข้าเว็ปที่เป็น HTTP ไม่ได้จะเป็นอย่างไร
โดย noncup302 พ 10 ม.ค. 2024 12:26 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
784
พฤ 11 ม.ค. 2024 8:53 pm โดย บุคคลทั่วไป View Topic Google Chrome เข้าเว็ปที่เป็น HTTP ไม่ได้จะเป็นอย่างไร
อินเตอร์เน็ตบ้าน กับ Corporate ต่างกันอย่างไร
โดย Anonymous อ 09 ม.ค. 2024 12:40 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
352
พ 10 ม.ค. 2024 12:24 pm โดย noncup302 View Topic อินเตอร์เน็ตบ้าน กับ Corporate ต่างกันอย่างไร
ตรวจสอบข้อมูลภาษี MyTaxAccount - เพื่อยื่นแบบแสดงรายการภาษีเงินได้บุคคลธรรมดา (แบบ ภ.ง.ด.90/ภ.ง.ด.91)
โดย mindphp อ 07 ม.ค. 2024 6:05 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
1
1193
อ 07 ม.ค. 2024 6:09 pm โดย mindphp View Topic ตรวจสอบข้อมูลภาษี MyTaxAccount - เพื่อยื่นแบบแสดงรายการภาษีเงินได้บุคคลธรรมดา (แบบ ภ.ง.ด.90/ภ.ง.ด.91)
ใครใช้ SSH อัพเกรดด่วน เครื่องคุณกำลังมีความเสียงสำหรับคนที่ใช้ OpenSSH ต่ำกว่าเวอร์ชั่น 9.5
โดย mindphp อ 07 ม.ค. 2024 3:15 am บอร์ด MindPHP News & Feedback
1
338
อ 07 ม.ค. 2024 3:20 am โดย mindphp View Topic ใครใช้ SSH อัพเกรดด่วน เครื่องคุณกำลังมีความเสียงสำหรับคนที่ใช้ OpenSSH ต่ำกว่าเวอร์ชั่น 9.5
สอบถามครับ Joomla ใช้ Hosting ของอะไรดีครับ
โดย Anonymous อ 07 ม.ค. 2024 3:00 am บอร์ด สอบถามปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
913
อ 07 ม.ค. 2024 6:34 pm โดย mindphp View Topic สอบถามครับ Joomla ใช้ Hosting ของอะไรดีครับ
หากคุณเป็นแฟนตัวยงของฟุตบอลไทย คือเว็บไซต์ที่คุณห้ามพลาด
โดย chenyuting ศ 05 ม.ค. 2024 4:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
483
ศ 05 ม.ค. 2024 4:52 pm โดย chenyuting View Topic หากคุณเป็นแฟนตัวยงของฟุตบอลไทย คือเว็บไซต์ที่คุณห้ามพลาด
จะติดตั้ง sql server php driver บน mac
โดย Anonymous ศ 05 ม.ค. 2024 2:07 pm บอร์ด Programming - PHP
1
1082
ส 06 ม.ค. 2024 7:25 pm โดย mindphp View Topic จะติดตั้ง sql server php driver บน mac