Map ใน JavaScript

Map คือชุดของคู่กุญแจค่า ที่กุญแจสามารถเป็นข้อมูลทุกชนิด

Map จะจำได้ลำดับที่เข้าใส่ของกุญแจในตอนแรก

วิธีสร้าง Map

สามารถสร้าง JavaScript Map ด้วยวิธีต่อไปนี้:

  1. ส่งตัวแปรตัวเดียวให้กับ new Map()
  2. สร้าง Map และใช้ Map.set()

เมธอด new Map()

สามารถทำได้โดยส่งตัวแปรตัวเดียวให้กับ new Map() การสร้าง Map ด้วยฟังก์ชันคอนสตรัคทอร์:

ตัวอย่าง

// สร้าง Map:
const fruits = new Map([
  ["apples", 500],
  ["bananas", 300],
  ["oranges", 200]
});

ทดลองด้วยตัวเอง:

เมธอด set()

สามารถใช้ set() เมธอดเพื่อเพิ่มอิเลเมนต์เข้าสู่ Map:

ตัวอย่าง

// สร้าง Map:
const fruits = new Map();
// กำหนดค่า Map:
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);

ทดลองด้วยตัวเอง:

set() เมธอดนี้ก็สามารถใช้เพื่อเปลี่ยนค่าที่มีอยู่ใน Map:

ตัวอย่าง

fruits.set("apples", 200);

ทดลองด้วยตัวเอง:

เมธอด get()

get() วิธีใช้เมธอดเพื่อใช้ค่าของกุญแจใน Map:

ตัวอย่าง

fruits.get("apples");    // กลับค่า 500

ทดลองด้วยตัวเอง:

Map คือแบบที่เป็นตัวแทน

typeof กลับค่า object:

ตัวอย่าง

// กลับค่า object:
typeof fruits;

ทดลองด้วยตัวเอง:

instanceof Map กลับค่า true:

ตัวอย่าง

// กลับค่า true:
fruits instanceof Map;

ทดลองด้วยตัวเอง:

JavaScript แบบที่แตกต่างกับ Map:

以下是 JavaScript แบบที่แตกต่างกับ Map:

对象 Map
不可直接迭代 可直接迭代
没有 size 属性 有 size 属性
键必须是字符串或 Symbol 键可以是任何数据类型
键的顺序不明确 键按插入顺序排序
有默认键 没有默认键

完整的 Map 参考手册

如需完整参考,请访问我们的:คู่มือการสอบถาม JavaScript Map

该手册包含所有 Map 属性和方法的描述和实例。

浏览器支持

Map 是 ES6 的特性(JavaScript 2015)。

自 2017 年 6 月起,所有现代浏览器均支持 ES6:

Chrome Chrome Edge Firefox Safari
Opera Chrome 51 Edge 15 Firefox 54 Safari 10
Opera 38 พฤษภาคม 2016 เมษายน 2017 มิถุนายน 2017 กันยายน 2016

มิถุนายน 2016