Question
Flash 6 vs. Flash 7/8 AS1 difference?
Is this behavior documented? It has left me utterly baffled.
var a = "string";
if(!a)trace("!a:"+a);
Working in the Flash 8 IDE, I get these results:
Publish settings - Flash 6 AS1
Output - "!a:string"
Publish settings - Flash 7 or 8 AS1
Output - ""
So (!var_str) evaluates 'true' in SWF6, but evaluates 'false' in SWF7 and SWF8? Is this essentially a bug in SWF6 that was fixed in SWF7? Or is there a problem with the Flash 8 IDE compiling to SWF6? I'll try compiling with my old copy of Flash 6 when I get a chance.
var a = "string";
if(!a)trace("!a:"+a);
Working in the Flash 8 IDE, I get these results:
Publish settings - Flash 6 AS1
Output - "!a:string"
Publish settings - Flash 7 or 8 AS1
Output - ""
So (!var_str) evaluates 'true' in SWF6, but evaluates 'false' in SWF7 and SWF8? Is this essentially a bug in SWF6 that was fixed in SWF7? Or is there a problem with the Flash 8 IDE compiling to SWF6? I'll try compiling with my old copy of Flash 6 when I get a chance.