|
Forum Flash, Actionscript, PHP e MySQL
|
|
|
|
|
|
| Autore |
Messaggio |
LeeFX
principiante

Registrato: 18/10/09 08:32
Messaggi: 35
|
Oggetto: Sapere se un certo elemento di un array è stato definito...
Inviato: 20.08.11 | 12:20 |
|
|
Domanda come da oggetto:
come faccio a sapere se un certo elemento di un array è stato definito?
Spiego il problema più in dettaglio se può servire:
1) Ho un array bidimensionale le cui dimensioni non posso conoscere a prescindere.
2) L'array è composto da una serie di 1 e 0, laddove 1 rappresenta un muro, e 0 uno spazio libero. Ad es., qualcosa tipo questo:
11111
10001
10101
10101
10001
11111
3) Con un ciclo for annidato, devo ricavarmi gli angoli di questo muro, laddove ci sono (quindi anche sui muri interni)
4) Per fare questo, ho bisogno di "interrogare" l'array in questo modo:
Se si presenta attorno ad array[x][y] questa sequenza:
00
01
Allora so, che c'e uno spigolo di un certo tipo.
NOTA: in questo esempio array[x][y] è l'1 in basso a destra. Gli 0 sono array[x-1][y-1], array[x-1][y] e array[x][y-1]
5) Purtroppo, quando vado ad interrogare gli elementi che fanno da "cornice" all'array, quei -1 che mi servono per "guardare intorno" ad un certo elemento, escono fuori dall'array stesso, e mi da un risultato che non posso gestire.
Questo risultato ingestibile, che non è nemmeno "undefined" non riesco ad utilizzarlo in nessun modo...
Mi chiedevo se esistesse un modo per controllare quando si è fuori un array |
|
| Torna in cima |
|
|
Sponsor
|
|
 |
LeeFX
principiante

Registrato: 18/10/09 08:32
Messaggi: 35
|
Oggetto:
Inviato: 20.08.11 | 18:08 |
|
|
Ok, lo so che stavate per rispondere in massa... ma vi brucio sul tempo
Allora, pensavo di arginare il problema mettendo una cornice di zero attorno all'array.
In modo da diventare da così
11111
10001
10101
10101
10001
11111
a così:
0000000
0111110
0100010
0101010
0101010
0100010
0111110
0000000
quindi avevo pensato di mettere il primo strato di 0 in questo modo:
array.unshift(0);
//e poi una serie di
array[0].push(0);
//in un ciclo for
Perchè mi dà quest'errore?
TypeError: Error #1006: value non è una funzione.
 |
|
| Torna in cima |
|
|
LeeFX
principiante

Registrato: 18/10/09 08:32
Messaggi: 35
|
Oggetto:
Inviato: 20.08.11 | 20:23 |
|
|
benissimo... scusate se mi faccio botta e risposta... ho capito l'inghippo.
usavo push() su un normale numero, convinto che fosse l'inizio di un array...
Ehm... scusate, si può chiudere, ed eventualmente cancellare il thread... che vergogna  |
|
| Torna in cima |
|
|
|
|
Non puoi inserire nuovi Topic in questo forum Non puoi rispondere ai Topic in questo forum Non puoi modificare i tuoi messaggi in questo forum Non puoi cancellare i tuoi messaggi in questo forum Non puoi votare nei sondaggi in questo forum Non puoi allegare files in questo forum Non puoi downloadare gli allegati in questo forum
|
|