Matriz de objetos vs objeto aninhado?

Eu tenho uma pergunta de programação muito básica que eu esperava que você pudesse lançar uma luz.

No momento, estou trabalhando em muitos objetos e queria saber se é melhor procurar conteúdo dentro de uma matriz de objetos ou dentro de um objeto aninhado?

Por exemplo, eu posso armazenar a mesma amostra de dados das duas maneiras a seguir:

data1 = [ 
{ "id":1, "key1: "value1", "key2:"value2"},
{ "id":2, "key1: "value1", "key2:"value2"},
{ "id":3, "key1: "value1", "key2:"value2"},
{ "id":4, "key1: "value1", "key2:"value2"},
.....
]

e

data2 = {
"id_1": { "key1: "value1", "key2:"value2"},
"id_2": { "key1: "value1", "key2:"value2"},
"id_3": { "key1: "value1", "key2:"value2"},
"id_4": { "key1: "value1", "key2:"value2"},
.....
}

Agora, o requisito é obter uma determinada propriedade de um objeto filho. E tudo o que sabemos é o ID (e não o índice) associado a ele.

Se eu usar o método array, terei que usar loops e filtros de array para acessar qualquer conteúdo / valor nos objetos individuais. Esse método parece bastante complicado e a iteração através de cada objeto filho parece muito ineficiente para mim. No entanto, sempre que vejo amostras de dados semelhantes sendo implementadas por programadores experientes, todas parecem usar muito matrizes.

Se eu usar o método de objeto aninhado, tudo o que preciso fazer é chamardata2.id_2.key2 para obter esse valor específico.

Qual é a maneira recomendada de fazer as coisas? Eu vou jogar com conjuntos de dados bastante grandes e, portanto, a opção terá melhor desempenho?

questionAnswers(2)

yourAnswerToTheQuestion