Je crée un tableau dans Javascript où l'id de produit est utilisé pour la clé. Comme la clé est numérique, le tableau remplit les espaces vides.Forcer javascript key integer remplit array avec null
Ainsi, par exemple, si je n'avais que deux produits et leurs papiers d'identité étaient 5 et 7, je ferais quelque chose comme:
var arr = []
arr[5] = 'my first product';
arr[7] = 'my second product';
Ce tableau est ensuite transmis à un script PHP, mais lors de l'impression du tableau, Je reçois ce qui suit;
Array (
[0] = null
[1] = null
[2] = null
[3] = null
[4] = null
[5] = My first product
[6] = null
[7] = My second product
)
mes numéros d'identification sont en fait 6 chiffres, de sorte que lors de la boucle sur le tableau, il y a 100.000 itérations, même si je n'ai en fait deux produits.
Comment puis-je créer le tableau afin que les valeurs nulles ne soient pas entrées? J'ai pensé à faire de la clé une chaîne à la place, mais comme le tableau est construit dynamiquement, je ne suis pas sûr de savoir comment faire cela.
var arr = [];
for(var i=0; i<products.length; i++)
{
array[products[i].id] = products[i].name;
}
Merci
utiliser une carte, où id est la – Andrea
clé est la question sur un tableau itérer clairsemée, ou comment stocker les données sans utiliser un tableau? –
Un objet ne serait-il pas une meilleure solution? 'var arr = {}; arr [5] = 'mon premier produit'; arr [7] = 'mon deuxième produit'; ' – Craicerjack