JavaScript Object.groupBy()

คำอธิบายและการใช้งาน

Object.groupBy() วิธีนี้จะจัดกลุ่มองค์ประกอบของตัวแปรตามค่าของตัวแปรที่กลับค่าโดยผ่านฟังก์ชันแบ้งค่า

Object.groupBy() วิธีนี้จะไม่เปลี่ยนแปลงตัวแปรแรก

หมายเหตุ

องค์ประกอบในตัวแปรและตัวแปรที่กลับค่าเป็นเดียวกัน

การเปลี่ยนแปลงที่ทำสำหรับเป้าหมายจะสะท้อนออกมาที่อีกตัวเดียว

ความแตกต่างระหว่าง Object.groupBy() และ Map.groupBy()

Object.groupBy() และ Map.groupBy() ความแตกต่างคือ:

Object.groupBy() จัดกลุ่มองค์ประกอบไปยังสิ่งที่เป็น JavaScript Object

Map.groupBy() จัดกลุ่มองค์ประกอบไปยังตัวแปร Map

ตัวอย่าง

// สร้างลิสต์
const fruits = [
  {name: "apples", quantity: 300},
  {name: "bananas", quantity: 500},
  {name: "oranges", quantity: 200},
  {name: "kiwi", quantity: 150}
];
// ฟังก์ชันกลับโรงแรมสำหรับองค์ประกอบที่จะจัดกลุ่ม
function myCallback({ quantity }) {
  return quantity > 200 ? "ok" : "low";
}
// จัดกลุ่มตามจำนวน
const result = Object.groupBy(fruits, myCallback);

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

กฎระเบียบ

Object.groupBy(iterable, callback)

ตัวแปร

ตัวแปร เรื่องที่เล่าถึง
iterable จำเป็น。ลิสต์ที่สามารถวนลูปได้ หรือ Map
callback

จำเป็น。ฟังก์ชันที่ทำสำหรับองค์ประกอบทุกตัว

ฟังก์ชันนี้ควรกลับค่าชื่อของกลุ่มองค์ประกอบ

ค่าที่กลับค่า

ประเภท เรื่องที่เล่าถึง
Iterator เป็นเป็นเอกสารที่สามารถวนลูปได้ที่มีองค์ประกอบเข้ารวม

การสนับสนุนของเบราวเซอร์

Object.groupBy() เป็นคุณสมบัติของ ES2024。

ตั้งแต่เดือนมีนาคม 2024 ตั้งแต่ข้างหน้า ทุกบราวเซอร์มודรนใหม่จะสนับสนุนเต็มที่:

Chrome Edge Firefox Safari Opera
Chrome 117 Edge 117 Firefox 119 Safari 17.4 Opera 103
กันยายน 2023 กันยายน 2023 ตุลาคม 2023 ตุลาคม 2024 พฤษภาคม 2023