Today I bring to you… another silly compiler quirk! Read on for the silliness.
Changing Arrays Midstream
I often wonder about language features that I know have a lot going on behind the scenes. In AS3, this commonly has me wondering about the for-in and for-each loops, which I use frequently. This article is about what happens to those loops when you change the array you’re iterating over during the iteration.
Indexing Anything
Indexing is a little bit special in ECMAScript languages like AS3, AS2, and JavaScript. MXMLC will gleefully let you index just about anything, even if there isn’t a chance it’ll work.
Pointless Code
We’ve all seen it, perhaps even in our own code. It’s something I think we do because we’re not really sure what would happen if we didn’t do it. Here are some little tidbits of pointless code I’ve been seeing recently:
Flexible Loop Syntax
First things first: this might be a bug in MXMLC. It sure did cause a bug in my program though! Read on for the stupid mistake that had me scratching my head.
Dictionary Conversion
Dictionaries are very useful. Unlike Objects, your keys don’t need to be Strings. But there are remnants of this String requirement that are not obvious. Fortunately, it’s a simple rule to remember…
Converting Vectors to Arrays
Vectors– typed arrays in AS3– are much quicker than arrays and therefore very useful. There are many times where you end up with arrays though and need to convert them into vectors for the bulk of your using that data. This article is about that process.
Variable Clashes
Scoping is pretty weird in AS3 for those coming from C/C++ and Java. There are two cases in particular you should know about.
Fun With Dynamic Functions
Dynamic functions are a very useful feature of AS3 and JavaScript. Closures constantly come in handy for cleaner, more powerful code. Here’s a feature you might not know about them though.