【学习记录】structuredClone,URLSearchParams,groupBy
structuredClone()
可以进行深拷贝,这里有详细讲解:Window:structuredClone() 方法
当需要处理包含嵌套对象或数组的复杂数据结构时,建议使用 structuredClone() 来保护原始数据。
举例:别再用 … 扩展运算符了,这个新 API 合并对象更快更安全
不用再使用 JSON.parse(JSON.stringify(obj)) 了,它无法处理 Date 对象、undefined、等特殊类型。
URLSearchParams
// 现代的方式
const url = new URL('https://example.com/page?id=123&category=tech');
const id =url.searchParams.get('id');//"123"
groupBy
可以实现数组分组,不再用迭代处理
const products = [{ name: '苹果', category: '水果' },{ name: '电视', category: '电器' }
];// 以前的方式
const grouped = products.reduce((acc, product) => {const key = product.category;if (!acc[key]) { acc[key] = []; }acc[key].push(product);return acc;
}, {});
// grouped: { '水果': [...], '电器': [...] }
ES2023 引入了 Object.groupBy(),让分组操作变得语义化且极其简单。
const grouped = Object.groupBy(products, product =>product.category);