When I first determined to datatype my codes strictly, I had this illusion that I must assign everything according to their data types. Here’s an example of me being disillusioned 😛:
var age:uint = 2; // hardcoded value for testing var isBorn:Boolean = ( age == 0 ) ? false : true; trace( isBorn ); // returns true. age = 0; isBorn = ( age == 0 ) ? false : true; trace( isBorn ); // returns false.
As you can see from the above example, it was not pretty. It was only when I read the section of Conversion to Primitive Types in Essential ActionScript 3.0 did it dispels my misconception. 😀
So here’s what I can actually do:
var age:uint = 2; var isBorn:Boolean = age; trace( isBorn ); // returns true as well. age = 0; isBorn = age; trace( isBorn ); // returns false. Works well!
In another typical scenario, if I wanted to make a movieclip’s visibility to false and alpha to 0, instead of doing:
mc.visible = false; mc.alpha = 0;
I can just:
mc.visible = mc.alpha = 0;
** Do you see the advantage already? **
More info about type conversions can be found here on Adobe LiveDocs.
The information below is referenced from: Essential ActionScript 3.0 by Colin Moock. Copyright 2007 O’Reilly Media, Inc., 0-596-52694-6
[table id=1] [table id=2] [table id=3] [table id=4] [table id=5]