Avatar billede stener Nybegynder
06. februar 2003 - 11:40 Der er 11 kommentarer og
1 løsning

array

Hejsa

Vil lige starte med at sige at det er første gang jeg skal
lave noget med arrays så det er nok en meget dum måde jeg gør det på.


Jeg har en array hvor jeg trækker en pris for et produkt
ud som.

a[1] = "379.95";
a[2] = "279.95";

osv

så har jeg en array der trækker antal ud som
b[1] = "2";
b[2] = "3";

Skal bruge en totalpris for hvad hvert enkelt produkt altså:
a[1] * b[1]
a[2] * b[2]

samt en total pris for alle produkterne:
a[1] * b[1] + a[2] * b[2] osv

Hvordan gør jeg det.

På forhånd tak.
Avatar billede nikolajdu Nybegynder
06. februar 2003 - 11:49 #1
<script>
a = new Array();
a[1] = "379.95";
a[2] = "279.95";

b = new Array();
b[1] = "2";
b[2] = "3";

resultat1 = a[1] * b[1]
resultat2 = a[2] * b[2]

Ialt = resultat1+resultat2

alert(Ialt)
</script>

Men hvis du har flere så skal vi nok finde en anden metode...
Avatar billede stener Nybegynder
06. februar 2003 - 12:08 #2
Ved ikke på forhånd hvor mange produkter der er det kommer an på hvor mange produkter der findes i indkøbskurven..:)

Men er det en ok måde at gøre det på?..

Mvh

Stener
Avatar billede nikolajdu Nybegynder
06. februar 2003 - 12:12 #3
Ja det er der, men det kræver lidt oplysninger og hvordan din "kurv" ser ud.
Avatar billede stener Nybegynder
06. februar 2003 - 12:17 #4
Okeis hvad vil du vide?.

Har et K_id som er auto
Har et K_produktid som er produktets id så jeg kan finde det i tabellen produkter
Har et K_Antalstk som er det antal kunden vil have af det produkt
Har et Sessionid felt så jeg kan finde de produkter der hører til kunden.

Ved ikke om det er nok.
Avatar billede z42cool Nybegynder
06. februar 2003 - 12:17 #5
Man kunne f.eks. vælge den semi objektorienterede vej :-)

<script>
function Vare_getTotal()
{
  return this.pris*this.antal;
}

function Vare(pris, antal)
{
  this.pris = pris;
  this.antal = antal;
  this.getTotal = Vare_getTotal;
}

function Varer_getTotal()
{
  var total = 0;
  for (var key in this.varer)
    total += this.varer[key].getTotal();
  return total;
}

function Varer_toString()
{
  var s = "", vare;
  for (var key in this.varer)
  {
    vare = this.varer[key];
    s += key + " " + vare.pris + "x" + vare.antal + " = " + vare.getTotal() + "\n";
  }
  s += "Ialt " + this.getTotal();
  return s;
}

function Varer_addVare(key, vare)
{
  this.varer[key] = vare;
}

function Varer()
{
  this.varer = new Array();
  this.getTotal = Varer_getTotal;
  this.toString = Varer_toString;
  this.addVare = Varer_addVare;
}


//Lav en kurv og læg varer i
kurv = new Varer();
kurv.addVare("Havregryn", new Vare(379.95, 2));
kurv.addVare("Flormelis", new Vare(279.95, 3));

alert(kurv.toString());

//Tilføj en vare mere

kurv.addVare("Vaskepulver", new Vare(112.25, 5));

alert(kurv.toString());


//Køb noget mere flormelis
kurv.varer["Flormelis"].antal += 2;

alert(kurv.toString());


</script>
Avatar billede nikolajdu Nybegynder
06. februar 2003 - 12:24 #6
z4 - Har vist dig noget af vejen. Det bliver nemlig en hel del mere dynamisk end det første jeg viste dig. Det var nu også kun i tilfældet af der ikke var mange vare :)
Avatar billede nikolajdu Nybegynder
06. februar 2003 - 12:24 #7
varer even ...
Avatar billede stener Nybegynder
06. februar 2003 - 12:32 #8
Har de produkter som kunden har købt i databasen så skal have dem trukket ud i et array også have lavet.

Pris i alt pr produkt
Pris i alt for alle produkter

Har følgende kode som du viste mig tidligere z42cool

Produkt = a[val]
produktialt = Produkt * document.produkter["antal" + nummer].value
var R_produktialt = Math.round(produktialt)
document.produkter["p_ialt" + nummer].value = R_produktialt

Det giver mig total prisen for hvert enkelt produkt hvis jeg skifter antal.

Kan man ikke lave et loop igennen arrayet og ligge pris og antal sammen eller bare ligge total prisen for hvert produkt i et array også ligge alle total priserne pr produkt sammen og få en total pris.

Det virker sikkert ik :).
Avatar billede stener Nybegynder
06. februar 2003 - 12:33 #9
Prøver om jeg kan hitte ud af noget med din kode z42cool.

Tak for det..
Avatar billede stener Nybegynder
25. august 2006 - 14:23 #10
Nogen der vil have point ?
Avatar billede stener Nybegynder
09. december 2006 - 14:28 #11
smid et svar og få nogle points :)
Avatar billede stener Nybegynder
31. marts 2011 - 12:40 #12
Mange tak for besvarelserne lukker denne tråd. Tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I dag 21:00 Libre Office Impress Af Frank i Andre styresystemer
I dag 11:47 VB script Af Jenshentze i Word
I dag 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel