首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在JavaScript中将十进制转换为十六进制

如何在JavaScript中将十进制转换为十六进制
EN

Stack Overflow用户
提问于 2008-09-12 06:26:58
回答 22查看 1.2M关注 0票数 1.7K

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

EN

回答 22

Stack Overflow用户

回答已采纳

发布于 2008-09-11 22:28:35

使用以下命令将数字转换为十六进制字符串:

代码语言:javascript
复制
hexString = yourNumber.toString(16);

并使用以下命令反转此过程:

代码语言:javascript
复制
yourNumber = parseInt(hexString, 16);
票数 2.9K
EN

Stack Overflow用户

发布于 2009-03-30 16:05:03

如果您需要处理位字段或32位颜色之类的内容,则需要处理有符号数字。JavaScript函数toString(16)将返回一个负的十六进制数,这通常不是您想要的。这个函数做了一些疯狂的加法,使它成为一个正数。

代码语言:javascript
复制
function decimalToHexString(number)
{
  if (number < 0)
  {
    number = 0xFFFFFFFF + number + 1;
  }

  return number.toString(16).toUpperCase();
}

console.log(decimalToHexString(27));
console.log(decimalToHexString(48.6));

票数 158
EN

Stack Overflow用户

发布于 2008-09-11 22:29:08

下面的代码将把十进制值d转换为十六进制。它还允许您向十六进制结果添加填充。因此,默认情况下,0将变为00。

代码语言:javascript
复制
function decimalToHex(d, padding) {
    var hex = Number(d).toString(16);
    padding = typeof (padding) === "undefined" || padding === null ? padding = 2 : padding;

    while (hex.length < padding) {
        hex = "0" + hex;
    }

    return hex;
}
票数 100
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档