JS中如何将字符串类型的十六进制数转换为数字?

新手上路,请多包涵

假设我有一个十六进制,例如 "0xdc" ,我如何将这个十六进制 string 转换为十六进制 Number 类型?

从字面上看只是失去了引号。 Number() 构造函数和 parseInt() 只是将它转换为 0 到 255 之间的整数,我只想要 0xdc

编辑:

To make my point more clear: I want to go from "0xdc" (of type String ), to 0xdc (of type Number )

原文由 Fabian Tjoe A On 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 721
2 个回答

可以使用 Number 函数,将字符串按照一定的格式解析为数字。

 console.log(Number("0xdc"));

JavaScript 使用一些符号来识别数字格式,例如 -

  1. 0x = 十六进制
  2. 0b = 二进制
  3. 0o = 八进制

原文由 dhaker 发布,翻译遵循 CC BY-SA 4.0 许可协议

如果你想将字符串转换为十六进制表示,你可以转换为以 16 作为基数的数字。

 parseInt("0xdc", 16)  // gives you 0xdc

原文由 Huantao 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题