如何在Actionscript3中将十六进制转换为十进制?

Abb*_*Hoi 3 actionscript-3

如何在Actionscript3中将十六进制(以字符串形式)转换为十进制(int)?

Raj*_*han 20

Number,int以及uint具有toString()接受radix作为参数的方法的类.

radix指定用于数字到字符串转换的数字基数(从2到36).如果未指定radix参数,则默认值为10.

你可以通过Number和uint类转换为八进制,十六进制,二进制等任何基数.

更好的方法

var decimal:int = parseInt("FFFFFF",16); //输出:16777215

其他方式

var hex:String = "0xFFFFFF";
Run Code Online (Sandbox Code Playgroud)

var hexint:int = int(hex); //输出:16777215

它相当于

var hexint:int = int(hex).toString(10); //十进制转换

回到原始价值:

var decimalStr:String = hexint.toString(16).toUpperCase(); // output : FFFFFF 
Run Code Online (Sandbox Code Playgroud)

  • 请注意,顶级函数[parseInt()](http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/package.html#parseInt())和[parseFloat()](http:/ /help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/package.html#parseFloat())也可以使用.特别是,文档说parseInt()将采用十六进制字符串(它应以0x开头表示十六进制字符串). (2认同)