|
Creazione di script con ActionScript > Apertura di file Flash 4
Apertura di file Flash 4
ActionScript ha subito importanti modifiche con la versione di Flash 5 diventando un linguaggio orientato agli oggetti con tipi di dati multipli e che usa la sintassi del punto. ActionScript di Flash 4 disponeva di un solo vero tipo di dati: stringa. Il linguaggio usava diversi tipi di operatori nelle espressioni per indicare se il valore doveva essere considerato come stringa o come valore numerico. In Flash 5 è possibile usare un solo insieme di operatori per tutti i tipi di dati.
Quando in Flash 5 si apre un file creato in Flash 4, le espressioni di ActionScript vengono convertite automaticamente per renderle compatibili con la nuova sintassi di Flash 5. Nel codice ActionScript appaiono le seguenti conversioni di tipi di dati e operatori:
 |
L'operatore = veniva usato in Flash 4 per esprimere l'uguaglianza numerica. In Flash 5 == è l'operatore di uguaglianza e = è l'operatore di assegnazione. Gli operatori = dei file in Flash 4 vengono convertiti automaticamente in == . |
 |
Flash esegue automaticamente le conversioni dei tipi di dati per garantire il funzionamento corretto degli operatori. A causa dell'introduzione di tipi di dati multipli, gli operatori seguenti hanno assunto un nuovo significato: |
|
+, ==, !=, <>, <, >, >=, <= |
 |
In ActionScript di Flash 4 tali operatori erano sempre operatori numerici. In Flash 5 gli operatori funzionano in modo diverso a seconda dei tipi di dati degli operandi. Per evitare differenze semantiche nei file importati, viene applicata la funzione Number a tutti gli operandi di tali operatori. Ai numeri costanti non viene applicata la funzione Number in quanto sono ovviamente valori numerici. |
 |
In Flash 4 la sequenza di escape \n generava un carattere di ritorno a capo (ASCII 13). In Flash 5, per osservanza dello standard ECMA-262, \n genera un carattere di avanzamento riga (ASCII 10). Una sequenza di escape \n dei file FLA di Flash 4 viene automaticamente convertita in \r . |
 |
L'operatore & veniva usato in Flash 4 per l'addizione di stringhe. In Flash 5 & è l'operatore AND bit a bit. Il nuovo operatore di addizione stringhe è add . Gli operatori & dei file in Flash 4 vengono convertiti automaticamente in operatori add . |
 |
Molte funzioni di Flash 4, quali Get Timer , Set Variable , Stop e Play non richiedevano parentesi finali. Per garantire una sintassi coerente, la funzione di Flash 5 getTimer e tutte le azioni richiedono la presenza di parentesi finali. Tali parentesi vengono aggiunte automaticamente durante la conversione. |
 |
Quando la funzione getProperty viene eseguita su un clip filmato che non esiste, in Flash 5 viene restituito il valore undefined e non il valore 0. Inoltre, in ActionScript di Flash 5, undefined == 0 è false . Per la conversione dai file Flash 4 il problema viene risolto introducendo la funzione Number nei confronti di uguaglianza. Nell'esempio seguente Number impone la conversione di undefined in 0 per consentire la riuscita del confronto: |
|
getProperty("clip", _width) == 0
Number(getProperty("clip", _width)) == Number(0) |
Nota: Se in ActionScript di Flash 4 sono state usate parole chiave di Flash 5 come nomi di variabili, Flash 5 genererà un errore di sintassi. Per ovviare, rinominare tutte le occorrenze delle variabili. Consultare Parole chiave.
|