如何解决如何在字典列表中获取带有键的元素
let colors = [
{
id: 0,color: "green",},{
id: 1,color: "blue",{
id: 2,color: "orange",];
使用 id=1
获取元素的最佳方式(最优化)是什么......有没有办法在不遍历列表的情况下做到这一点?
解决方法
小提示:
- 当您不重新分配值时,请使用 const 而不是 let
尝试执行以下操作:
// ✅ good pattern: destructuring. We only use what we need
const myColor = colors.find(({ id }) => id === 1)
,
如果数组是静态的,您可以遍历整个数组一次并创建一个查找表。然后,可以在 O(n)
预处理后在恒定时间内完成查找。
let colors = [
{
id: 0,color: "green",},{
id: 1,color: "blue",{
id: 2,color: "orange",];
const lookup = colors.reduce((acc,curr)=>(acc[curr.id] = curr,acc),{});
console.log(lookup[1]);
console.log(lookup[2]);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。