我正在使用代表十六进制数字(实际上是十六进制颜色)并添加它们的字符串.所以,加上aaaaaa+ 010101= ababab.我的方法似乎不必要地冗长而复杂:
var hexValue = "aaaaaa";
hexValue = "0x" + hexValue;
hexValue = parseInt(hexValue , 16);
hexValue = hexValue + 0x010101;
hexValue = hexValue.toString(16);
document.write(hexValue); // outputs 'ababab'
Run Code Online (Sandbox Code Playgroud)
十六进制值仍然是串联后的字符串0x,所以后来我必须将它更改为一个数字,然后我可以添加,那么我必须改变它回为十六进制格式!如果我添加的数字也是一个十六进制字符串,或者如果考虑到我#在所有这些开始之前删除了十六进制颜色,那么还有更多的步骤.
当然,有一种方法可以用更少的步骤来做到这一点!(我并不是说只是将它全部放在一行(parseInt("0x"+"aaaaaa",16)+0x010101).toString(16)或使用速记,我的意思是实际上做的更少.)
有没有办法让Javascript停止对其所有数学运算使用十进制并使用十六进制代替?或者是否有其他方法使Javascript更容易使用Hex?