5.2. Converting Between Different Number Systems
Problem
You want to convert a number between different bases (decimal, binary, hexadecimal, etc.).
Solution
Use the parseInt( ) function
with the
radix parameter (the
radix is the number’s base) to
convert a string to a decimal representation. Use the
Number.toString( ) method with the
radix parameter to convert a decimal
number to a string representation of the value in another base.
Discussion
No matter how you set a number value in ActionScript, the result is always retrieved as a decimal (base-10) number.
// Create a Color object.
myColor = new Color(this);
// Set the RGB value as a hexadecimal.
myColor.setRGB(0xF612AB);
// This displays the value as decimal: 16126635
trace(myColor.getRGB( ));However, if you want to output a value in a different base, you can
use
Number.toString(
radix
)
to convert any number value to a string representing that number in
the specified base.
These two examples convert numeric literals to
Number objects and output the string
representations in base-2 (binary) and base-16 (hexadecimal) format:
// Theradixis 2, so output as binary. trace(new Number(51).toString(2)); // Displays: "110011" // Theradixis 16, so output as hex. trace(new Number(25).toString(16)); // Displays: "19"
This example assigns a primitive number to a variable and calls the
toString( ) method to output the value in
hexadecimal:
myNum = 164; trace(myNum.toString(16)); // Displays: "A4"
Note that the results from these examples are ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access