JavaScript
/ JS 2024
JS 2024
JavaScript 版本号
早期的 ECMAScript 版本以数字命名:ES5 和 ES6。
从 2016 年开始,版本以年份命名:ES2016、2018、2020...
第 15 版,ECMAScript 2024,于 2024 年 7 月发布。
ES2024 中的新特性
- Object.groupBy()
- Map.groupBy()
- Temporal.PlainDate()
- Temporal.PlainTime()
- Temporal.PlainMonthDay()
- Temporal.PlainYearMonth()
警告
这些功能相对较新。
较旧的浏览器可能需要替代代码(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() vs 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);运行实例 »
点击 "运行实例" 按钮查看在线实例