besoin d'aide pour calculer des quantités dans un objet
Posté : 29 août 2022, 23:28
bonjour a tous
j'ai un morceau de code dans lequel je souhaiterais calculer des articles mais avec des quantités différentes
j'ai donc par exemple pour l'articles 77777 ----10 sous articles
pour l'article 88888 20 sous articles
pour l'article 99999 30 sous articles
imaginons que l'utilisateur ajoute dans son panier 4 articles 77777 cela doit faire un total de 40
si il ajoute 2 articles 88888 cela fait un total de 40
si il ajoute 3 articles 99999 cela fait un total de 90
si il ajoute 18 autres articles cela fait un total de 18
Donc le total absolu est 40+40+90+18=188 articles
mon code ne fonctionne pas bien au lieu de les ajouter il les places les uns derrière les autres
j'ai un morceau de code dans lequel je souhaiterais calculer des articles mais avec des quantités différentes
j'ai donc par exemple pour l'articles 77777 ----10 sous articles
pour l'article 88888 20 sous articles
pour l'article 99999 30 sous articles
imaginons que l'utilisateur ajoute dans son panier 4 articles 77777 cela doit faire un total de 40
si il ajoute 2 articles 88888 cela fait un total de 40
si il ajoute 3 articles 99999 cela fait un total de 90
si il ajoute 18 autres articles cela fait un total de 18
Donc le total absolu est 40+40+90+18=188 articles
mon code ne fonctionne pas bien au lieu de les ajouter il les places les uns derrière les autres
Code : Tout sélectionner
obj.totalpanierpromotion = function() {
var totalpanierpromotion = 0;
for(var item in panier) {
//console.log(panier[item]);
if (panier[item].nom == 77777) {
panier[item].quantite = 10 ;
totalpanierpromotion += panier[item].quantite;
} else if (panier[item].nom == 88888) {
panier[item].quantite = 20 ;
totalpanierpromotion += panier[item].quantite;
} else if (panier[item].nom == 99999) {
panier[item].quantite = 30 ;
totalpanierpromotion += panier[item].quantite;
}else {
totalpanierpromotion += panier[item].quantite;
}
}
console.log(Number(totalpanierpromotion));
return Number(totalpanierpromotion);
}