我在尝试将十六进制字符串中的颜色转换为整数值时遇到了一些问题。
我试图实现这一点的原因是,我正在读取一个JSON,该JSON以十六进制值提供,然后由Pixi和标准Canvas元素读取,然后为它们提供颜色。
现在,这将正确读取和转换我的所有颜色,直到它击中以0开头的那个或例如黑色'它只由0'组成。
parseInt("00aaa4", 16);//43684
这将成为我的canvas元素读取的无效数字。
parseInt("10aaa4", 16); //1092260
有效且可以正常使用。 我不确定这个问题是否有简单的解决方法。尝试寻找一些NPM模块,但它们都给出了同样的问题。
感谢您的帮助。
答案 0 :(得分:2)
有两种标记数字类型的方法。在它之前放置0x使其成为十六进制数,但是0使其成为八进制数。
当您尝试将数字转换为十进制时,请尝试在其前面加上一个0x,因此不会将其误认为八进制数。