Esiste un numero di linea costante o un modo per tracciare in modo dinamico il numero di riga in ActionScript?Costante numero di riga in Actionscript 3.0?
Vuol ActionScript avere l'equivalente di
__LINE__
in PHP?
Esiste un numero di linea costante o un modo per tracciare in modo dinamico il numero di riga in ActionScript?Costante numero di riga in Actionscript 3.0?
Vuol ActionScript avere l'equivalente di
__LINE__
in PHP?
Questa non è una costante, ma questa riga di codice vi darà il numero della linea:
trace(">",new Error().getStackTrace().match(/(?<=:)[0-9]*(?=])/g)[0]);
PS: questo funziona solo se il file SWF viene compilato in modalità debug
Per utilizzare il trucco di OXMO456 come una funzione, basta usare l'indice 1 del risultato match
(anziché l'indice 0). Il codice qui sotto fa questo e controlli per la capacità di debug:
import flash.system.Capabilities;
/**
* Returns the positive line number from which the function is called, if
* available, otherwise returns a negative number.
*/
function lineNumber():int {
var ret:int = -1;
if (Capabilities.isDebugger) {
ret = new Error().getStackTrace().match(/(?<=:)[0-9]*(?=])/g)[1];
}
return ret;
}
Esempio:
trace('line ' + lineNumber() + ' reached!');
wow, questo è cool – jedierikb
Molto bello trucco! – HanClinto
Grazie ragazzi !!! – OXMO456