atr*_*rev 1 javascript rgb hex
我试着在任何地方搜索,找到答案为什么.toString(16)将一个数字转换为十六进制值.我的第一个问题是,为什么16?我的第二个问题是,即使我看到没有字母进入代码,这怎么回信.例如,我不明白以下代码如何返回ff而不是数字.
var r = 255;
r.toString(16); //returns ffRun Code Online (Sandbox Code Playgroud)
如果有人对此有任何链接或见解,请告诉我.我很好奇.先感谢您!
十六进制是基数16.分解单词:hexa,意思是6; 十进制,意思10. 10 + 6 = 16.一些主要的基础是:
根据MDN文档:
对于
Number对象,该toString()方法返回指定基数中对象的字符串表示形式.参数
radix:可选.一个介于2和36之间的整数,指定用于表示数值的基数.
这意味着它将数字转换为字符串,并基于基数.语法Number.prototype.toString是:
number.toString([radix])
Run Code Online (Sandbox Code Playgroud)
哪里radix可选.如果指定基数,它将使用该基数进行转换,因此16是十六进制的.如果radix未指定,则假定为10(十进制).这是一个片段:
var num = 16;
console.log(num.toString()) //"16", base 10 is assumed here if no radix given
console.log(num.toString(16)) //"10", base 16 is givenRun Code Online (Sandbox Code Playgroud)
现在,关于RGB值:以(255,255,255)[白色]为例.每个单独的值(红色,绿色或蓝色)以十六进制表示.由于255是0xFF或者只是FF十六进制,所以完整的表示是FFFFFF,或者ffffff你看.