Avatar billede bimbo111 Nybegynder
01. juni 2008 - 19:07 Der er 3 kommentarer og
1 løsning

Et objekt var ventet

Jeg får en fejlmeddelelse når jeg prøver at tildele et array en værdi fra en funktion. Hvorfor?

Her er min kode:

<html>
<head>
<script type="text/javascript">

function rdm_toneart()
{
var rdm = Math.round(Math.random()*11);
return rdm;
}


function ReturnTone(toneTal)
{
var faerdig;
switch(toneTal)
{
case 0:
  faerdig="C";
  break;   
case 1:
  faerdig="C#";
  break;
case 2:
  faerdig="D";
  break;
case 3:
  faerdig="D#";
  break;
case 4:
  faerdig="E";
  break;
case 5:
  faerdig="F";
  break;
case 6:
  faerdig="F#";
  break;
case 7:
  faerdig="G";
  break;
case 8:
  faerdig="G#";
  break;
case 9:
  faerdig="A";
  break;
case 10:
  faerdig="Bb";
  break;
default:
  faerdig="H";
}
return faerdig;
}



function valAkkord(akkord)
{

var nyAkkord;

switch(akkord)
{
case 12:
  nyAkkord=0;
  break;   
case 13:
  nyAkkord=1;
  break;   
case 14:
  nyAkkord=2;
  break;   
case 15:
  nyAkkord=3;
  break;   
case 16:
  nyAkkord=4;
  break;   
case 17:
  nyAkkord=5;
  break;   
case 18:
  nyAkkord=6;
  break;   
case 19:
  nyAkkord=7;
  break;   
case 20:
  nyAkkord=8;
  break;   
case 21:
  nyAkkord=9;
  break;
case 22:
  nyAkkord=10;
  break;   
default:
  nyAkkord=akkord;
}
Return NyAkkord;
}

</script>
</head><body>
<script type="text/javascript">

toneart = new Array(7);
toneart[0] = new Array(3);
toneart[1] = new Array(3);
toneart[2] = new Array(3);
toneart[3] = new Array(3);
toneart[4] = new Array(3);
toneart[5] = new Array(3);
toneart[6] = new Array(3);

toneart[0][0]=1;
toneart[0][1]=rdm_toneart();                                      <---- Her kommer den
toneart[0][2]="maj7";

toneart[1][0]=2;
toneart[1][1]=valAkkord(toneart[0][1]+2);
toneart[1][2]="mol7";

toneart[2][0]=3;
toneart[2][1]=valAkkord(toneart[0][1]+4);
toneart[2][2]="mol7";

toneart[3][0]=4;
toneart[3][1]=valAkkord(toneart[0][1]+5);
toneart[3][2]="maj7";

toneart[4][0]=5;
toneart[4][1]=valAkkord(toneart[0][1]+7);
toneart[4][2]="7";

toneart[5][0]=6;
toneart[5][1]=valAkkord(toneart[0][1]+9);
toneart[5][2]="mol7";

toneart[6][0]=7;
toneart[6][1]=valAkkord(toneart[0][1]+11);
toneart[6][2]="ø";



document.write(toneart[0][1],"<br>");
document.write(toneart[1][1],"<br>");
document.write(toneart[2][1],"<br>");
document.write(toneart[3][1],"<br>");
document.write(toneart[4][1],"<br>");
document.write(toneart[5][1],"<br>");
document.write(toneart[6][1],"<br>");
document.write(toneart[7][1],"<br>");
document.write(valAkkord(2),"<br>");
</script>
</body></html>


Jeg mindes noget om at man i c++ ikke bare kan tildele et array en værdi med et lighedtegn?
Avatar billede olebole Juniormester
01. juni 2008 - 19:21 #1
<ole>

JavaScript er case sensitive, og det hedder: 'return nyAkkord;' ... ikke 'Return NyAkkord;'.

Derudover giver denne linje ikke mening, når du ikke har noget i retning af 'toneart[7]':
    document.write(toneart[7][1],"<br>");

/mvh
</bole>
Avatar billede roenving Novice
02. juni 2008 - 13:30 #2
-- og så giver din random-funktion sjældnere C og H end andre toner ...

-- hvad er det, du vil ?-)
Avatar billede bimbo111 Nybegynder
02. januar 2011 - 17:15 #3
Smid gerne svar Ole

Kom aldrig videre med projektet. Kan knap nok huske hvad det gik ud på.
Avatar billede bimbo111 Nybegynder
22. december 2011 - 21:57 #4
Svar
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