【小技巧】快速读取数组中的对象

背景

开发中经常遇到需要从数组中读取某个对象,每次遍历数组查询并不是一个好的选择,会消耗无谓的资源,我们可以使用一个对象作为中间结构,后续再次读取对象是可以直接从中间对象中获取

开始

代码如下

/*
 *快速通过key获取数组中的元素
 */
const array = [{ name: "lich", age: "19" }, { name: "dk" }];

// 定义一个对象
const cache = {};
// 遍历数组,以对象的唯一标识(name)作为key,设置到cache中
array.forEach((elem) => {
  cache[elem.name] = elem;
});

// 看下数组与cache中的结构
console.log(array, cache);

// 快速读出lich
console.log(cache["lich"]);
// 快速读出dk
console.log(cache["dk"]);
debugger;

总结

  1. 通过对象的key检索value具有非常好的性能
  2. 该思想不仅可以用在javascript的开发中,java中一样可以用该思路进行快速检索(使用一个HashMap最为中间结构)
posted @ 2022-09-22 23:20  李同学的教室  阅读(1159)  评论(0)    收藏  举报