Difference between revisions of "Actionscript"
(→Checking/Comparing Values) |
(→Checking Datatype) |
||
| Line 68: | Line 68: | ||
}</pre> | }</pre> | ||
| − | NaN is when its Not a Number but you can't just check it against the NaN. You have to use the special isNaN function (conversely, you can also use !isNaN to find a number) | + | NaN is when its Not a Number but you can't just check it against the NaN. You have to use the special isNaN function (conversely, you can also use !isNaN to find a number) |
<pre>var myVar - 15 - "coffee"; | <pre>var myVar - 15 - "coffee"; | ||
| Line 74: | Line 74: | ||
trace("Thats not a number"); | trace("Thats not a number"); | ||
}</pre> | }</pre> | ||
| + | |||
| + | when arrays are compared to see if they are the same, it has to be the exact same thing ie: can't just contain the same items, it has to be equalled, like literally... | ||
| + | |||
| + | <pre>arrayOne = newArray("wonk", "wink"); | ||
| + | arrayTwo = newArray("wonk", "wink"); | ||
| + | trace(arrayOne == arrayTwo); // displays false | ||
| + | |||
| + | arrayOne = newArray("wonk", "wink"); | ||
| + | arrayOne = arrayTwo; | ||
| + | trace(arrayOne == arrayTwo); // displays true</pre> | ||
=== Conditionals === | === Conditionals === | ||
Revision as of 14:15, 26 September 2008
Contents
Basics
Operators
- + for addition
- - for subtraction
- asterisk for multiply
- / for divide
these two are the same:
myNum = myNum + 6; myNum += 6;
- ++ add one
- -- decrease by one
those can be postfix or prefix operators but remember that only prefix affects it immediately.
myNum = 5; trace(myNum++); // displays 5 (adds one to next trace) trace(myNum); // displays 6 (has added one from the postfix) trace(++myNum); // displays 7 (adds one as its a prefix)
use this incremental thing to modify property over time:
my_mc.onEnterFrame = function () {
this._rotation += 5; // makes mc rotate by 5 degrees clockwise for each tick of frame rate
};
Checking/Comparing Values
- == checks for logical equality
- != checks for logical inequality
- === checks for strict logical equality
- !== checks for strict logical inequality
logical equality test trace(5 == 6); // false trace(6 == 6); // true trace(6 == "6"); // true logical inequality test trace(5 != 6); // true trace(6 != 6); // false trace(6 != "6"); // false
notice how with or without the quotation marks its okay... but with the strict logical operators, its not the case.
strict logical equality test
trace(5 === 6); // false
trace(6 === 6); // true
trace(6 === "6"); // false
trace("6" === 6); // false
trace("6" === "6"); // true
strict logical inequality test
trace(5 !== 6); // true
trace(6 !== 6); // false
trace(6 !== "6"); // true
trace("6" !== 6); // true
trace("6" !== "6"); // false
you have to remember that you shouldn't use just one = to test if its equal as the single = assigns values to things.
Checking Datatype
var myVar = 5;
if (typeof myVar == "number") {
trace("Its a number");
}
NaN is when its Not a Number but you can't just check it against the NaN. You have to use the special isNaN function (conversely, you can also use !isNaN to find a number)
var myVar - 15 - "coffee";
if (isNaN(myVar)) {
trace("Thats not a number");
}
when arrays are compared to see if they are the same, it has to be the exact same thing ie: can't just contain the same items, it has to be equalled, like literally...
arrayOne = newArray("wonk", "wink");
arrayTwo = newArray("wonk", "wink");
trace(arrayOne == arrayTwo); // displays false
arrayOne = newArray("wonk", "wink");
arrayOne = arrayTwo;
trace(arrayOne == arrayTwo); // displays true
Conditionals
var message = "yellow"; // the equal sign assigns values to variables
trace ("big " + message + " truck"); // prints "big yellow truck"
if (message == "yellow") { // the double equal sign checks to see if variables are equal
trace ("yes, i did say big yellow truck."); // prints "yes, i did say big yellow truck"
trace (typeof message); // prints "string"
var x = a; // prints "number"
trace (typeof a)
}
var x = 1;
while (x <= 5) { // as long as x is less than 5...
trace (x); // return 1 in output
x = x + 1; // return 2 3 4 5 in output
}
Reusable functions
Runtime Environment
Include external actionscript file
#include "filename.as" // includes the .as file at runtime (must be in same folder as .fla)
Detecting player/OS
Setting movie dimensions
Color
Setting RGB
Setting Transparency
Transform and restore RGB
Controlling RGB with sliders
Drawing
Numbers
Rounding Numbers
Text Field
Arrays
Oh no.