为什么javascript在分配给变量时会自动将十六进制值转换为十进制?

时间:2017-08-16 09:47:19

标签: javascript hex decimal type-conversion

我试图将十六进制格式的一些数据存储到JavaScript中的变量中,并以相同的格式读取数据。当我尝试将变量赋值为十六进制值并显示它时,我得到的十进制值相当于十六进制。

var a = 0x0F;
WScript.Echo("a = "+a);

我得到a = 15而不是a = 0x0F。为什么会这样?是否有可能以十六进制格式获取值?

1 个答案:

答案 0 :(得分:0)

hexadecimal中不存在

javascript类型。

只有少数几种类型(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures):

  • 字符串
  • 对象
  • ...

您正在做的是number赋值hexadecimal

但是,a是一个数字,它的正常表示形式是decimal

要获得hexadecimal string的{​​{1}}值(decimal),您可以查看以下答案:https://stackoverflow.com/a/57805/5119765