Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Array e cicli ...

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    49

    Array e cicli ...

    Ciao a tutti..
    vorrei sapere in cosa sbaglio?

    ho una stringa di testo che devo dividere per avere dei link , la stringa è questa sotto:

    _root.Link1 = "Link1=Default.aspx?tabid=42;Link2=Default.aspx?ta bid=40;Link3=Default.aspx?tabid=41;Link4=Default.a spx?tabid=44;Link5=Default.aspx?tabid=43;Link6=Def ault.aspx?tabid=45;";
    trace("_root.Link1 = "+_root.Link1);

    creo e carico array dividendo i valori con il carattere ";"

    my_array:Array = new Array();
    my_array = _root.Link1.split(";");

    a questo punto devo mettere i valori in variabili che mi serviranno come link, e avevo fatto questo:


    for (var i = 0; i<my_array.length; i++) {
    _global.url[i] = my_array[i];
    }

    Ma qualcosa non va! _global.url[i] non viene mai caricata!
    Se invece faccio:

    _global.url0 = my_array[0];
    _global.url1 = my_array[1];
    _global.url2 = my_array[2];
    _global.url3 = my_array[3];
    _global.url4 = my_array[4];
    _global.url5 = my_array[5];

    Tutto funziona!
    Perche il ciclo non funziona?

    GRZ!!!!!
    ..............
    Conrad Bland
    ..............

  2. #2
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    codice:
    for (var i = 0; i < my_array.length; i++)
    {
    	_global["url" + i] = my_array[i];
    }
    a parte questo, ti sconsiglio caldamente di riempire _global di variabili. Piuttosto rendi globale my_array...

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    49

    :-)

    ahhh grz del consiglio...
    cmq di solito le uso quando devo dichiarare una variabile che sia visibile in Mc principale e Mc di livelli diversi.. se non metto _global non le vedo giusto?
    ..............
    Conrad Bland
    ..............

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    49

    funziona!

    OK !!!
    grz funziona...
    quindi non

    _global.url[i] = my_array[i];

    ma

    _global["url"+i] = my_array[i];

    anche se non capisco perche! :master:
    altre volte l'ho usato nella prima forma ma non con array, tipo cosi:

    link = "azienda";
    _root.top[click].play(); > per avere _root.top.azienda
    ..............
    Conrad Bland
    ..............

  5. #5
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479

    Re: funziona!

    Originariamente inviato da bland
    anche se non capisco perche! :master:
    Perchè in questo caso:
    codice:
    _root.top[click].play();
    "click" è il nome di una variabile, contenente il riferimento ad una stringa, mentre in questo:
    codice:
    _global["url" + i]
    "url" è una stringa.
    Nel codice che stavi usando:
    codice:
    _global.url[i] = my_array[i];
    "url" è il nome di istanza di un array che non esiste. Se tu avessi scritto:
    codice:
    _global.url = new Array();
    for (var i = 0; i < my_array.length; i++)
    {
    	_global.url[i] = my_array[i];
    }
    allora ti saresti trovato con una cosa di questo tipo:
    codice:
    _global.url = [my_array[0], my_array[1],...my_array[N]];
    Ma dato che "url" non esiste come array, e che tu lo stai usando come se fosse un nome di istanza, non funzionava.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    49

    Grazieeee

    ok ok capito!!!
    grz mille!!!!!!!!!!!!

    :-)
    ..............
    Conrad Bland
    ..............

  7. #7
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Di niente... ;)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.