webForumDet fria alternativet

Tabell med arrayer

2 svar · 382 visningar · startad av SebastianE

SebastianEMedlem sedan nov. 2004100 inlägg
#1

Håller på med ett skolarbete. Vi ska göra ett memoryspel i JavaScript. Man ska kunna ställa in hur många brickor man ska använda sig utav. Man ställer först in antal rader. Säg två stycken rader och sen antal kolumner. Säg tre kolumer så får man sex brickor (2*3).
Brickorna som består utav bilder (har inte kommit dit ännu utan är siffor just nu) ska ligga i den här tabellen. Det jag får problem är att få tabellen uppbyggd med rätt siffror. Siffrorna ligger i en array. Loopar man ut dom som nu får man samma värde flera gånger.

Exempel
-------------
|16|12|14|
-------------
|16|12|14|
-------------

Koden för memoryspelet (dock ej funktionen som slumpar ut siffrorna ("brickorna")) ser ut just nu så här.

var memory = {

rows:0,
cols:0,
antalbrickor:0,
visa:[],

init:function(){
	memory.indata();
	visa = RandomGenerator.getPictureArray(rows,cols);
	visatva = skickaAntalBrickor = memory.tabell(antalbrickor);	
},

indata:function(){
	do{
		rows = parseInt(prompt("Ange antal rader",""));
		cols = parseInt(prompt("Ange antal kolumner",""));
		antalbrickor = parseInt(rows\*cols);
		if (antalbrickor\>16){
			alert("Du får ha max 16 brickor på spelplanen!");
		}
	}while(antalbrickor\>16)
},

tabell:function(antalbrickor){
	
	document.write("\<table\>");
	document.write("\<tbody\>");

	for (var rader = 0; rader\<rows; ++rader){
		document.write("\<tr\>");
		for(var kolumner = 0; kolumner\<cols; ++kolumner){
			document.write("\<td\>");		
			document.write(visa\[kolumner\]);
			document.write("\</td\>");
		}			
		document.write("\</tr\>");
	}
	document.write("\</tbody\>");
	document.write("\</table\>");
	
}

}

window.onLoad = memory.init();

aasahMedlem sedan mars 20034 471 inlägg
#2

SebastianE skrev:

Håller på med ett skolarbete.

Jag föreslår att du tittar efter i lärobok/föreläsningsanteckningar eller dylikt i första hand. Eller i andra hand frågar din lärare.

colioneMedlem sedan juni 20014 421 inlägg
#3

Denna for-loop, loopar ju ut samma sak varje gång iom att den börjar om från noll när du ropar på den. du får alltså värdena: visa[0], visa[1] visa[2] varje gång du loopar ut det.

for(var kolumner = 0; kolumner<cols; ++kolumner){
document.write("<td>");
document.write(visa[kolumner]);
document.write("</td>");
}
127 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)