Ho una lista di utenti, con minion, qualcosa del genere:
User52:
minion10
minion12
User32:
minion13
minion11
Ho tenuto un array in cui la "posizione" è l'id, come questo:
Users:
[52]User
minions:
[10]minion
[12]minion
[32]User
minions:
[13]minion
[11]minion
quindi posso accedervi facilmente in questo modo: user[UserID].minions[MinionID]
(ex: user[32].minions[11]
).
Ma quando lo stampo o lo mando da JSON, ho qualcosa del genere:
{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,minion,,,,,,,,,,,,,,minion}
Ma dovrei continuare a usare in questo modo o dovrei passare a qualcosa del genere:
User = function(){
this.minions = ...;
this.getMinion = function(value){
for(var m in this.minions){
if(this.minions[m].id == value){
return this.minions[m];
break;
}
}
}
}
e prendilo in questo modo:
user.getMinion(MinionID);
Domanda: ottengo prestazioni migliori usando un array "corto" ma usando loop ogni volta che ho bisogno di un seguace, o usando array "lunghi", ma non ho bisogno di loop e di ottenere valori direttamente dall'ID "nome"?