ECMAScript 2024

شماره نسخه JavaScript

نسخه‌های زودتر ECMAScript با عدد نامگذاری می‌شوند: ES5 و ES6.

از سال 2016، نسخه‌ها با نام سال نامگذاری می‌شوند: ES2016، 2018، 2020...

نسخه 15، ECMAScript 2024، در ماه ژوئیه 2024 منتشر شد.

ویژگی‌های جدید در ES2024

اخطار

این ویژگی‌ها نسبتاً جدید هستند.

بعضی از مرورگرهای قدیمی ممکن است نیاز به کد جایگزین (Polyfill) داشته باشند.

JavaScript Object.groupBy()

مثال

// ایجاد یک آرایه
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() این روش عناصر نمونه را بر اساس مقادیر رجوعی از تابع بازگشتی گروه‌بندی می‌کند.

Object.groupBy() این روش نمونه اصلی را تغییر نمی‌دهد.

توجه:

عناصر در نمونه اصلی و نمونه بازگردانده شده مشابه هستند.

تغییرات در نمونه اصلی یا نمونه بازگردانده شده در هر دو بازتاب می‌یابد.

JavaScript Map.groupBy()

مثال

// ایجاد یک آرایه
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 = Map.groupBy(fruits, myCallback);

آزمایش کنید

توضیح

Map.groupBy() این روش عناصر نمونه را بر اساس مقادیر رجوعی از تابع بازگشتی گروه‌بندی می‌کند.

Map.groupBy() این روش نمونه اصلی را تغییر نمی‌دهد.

توجه:

عناصر در نمونه اصلی و نمونه بازگردانده شده مشابه هستند.

تغییرات در نمونه اصلی یا نمونه بازگردانده شده در هر دو بازتاب می‌یابد.

Object.groupBy() در برابر Map.groupBy()

Object.groupBy() و Map.groupBy() تفاوت آنها:

Object.groupBy() عناصر را به یک شیء JavaScript گروه‌بندی کنید.

Map.groupBy() عناصر را به یک شیء Map گروه‌بندی کنید.

JavaScript Temporal.PlainDate()

مثال

const date = Temporal.PlainDate(2024, 5, 1);

آزمایش کنید

JavaScript Temporal.PlainTime()

مثال

const date = new Temporal.PlainTime(10, 30);

آزمایش کنید

JavaScript Temporal.PlainMonthDay()

مثال

const date = new Temporal.PlainMonthDay(5, 1);

آزمایش کنید

JavaScript Temporal.PlainYearMonth()

مثال

const date = new Temporal.PlainYearMonth(2024, 5);

آزمایش کنید