我知道 0x
是 Javascript 中十六进制数字的前缀。例如,0xFF
代表数字 255。
二进制数是否有类似的东西?我希望 0b1111
代表数字 15
,但这对我不起作用。
最佳答案
更新:
较新版本的 JavaScript——特别是 ECMAScript 6——增加了对二进制(前缀 0b
)、八进制(前缀 0o
)和十六进制(前缀:0x
) 数字文字:
var bin = 0b1111; // bin will be set to 15
var oct = 0o17; // oct will be set to 15
var oxx = 017; // oxx will be set to 15
var hex = 0xF; // hex will be set to 15
// note: bB oO xX are all valid
此功能已在 Firefox 和 Chrome 中可用。 IE 目前不支持它,但显然会在 Spartan 到来时支持。
(感谢 Semicolon 的评论和 urish's answer 指出这一点。)
原答案:
不,没有二进制数的等价物。 JavaScript 仅支持十进制(无前缀)、十六进制(前缀 0x
)和八进制(前缀 0
)格式的数字文字。
一种可能的替代方法是将二进制字符串与基数一起传递给 parseInt
方法:
var foo = parseInt('1111', 2); // foo will be set to 15
关于javascript - 是否有 "0b"或类似的东西来表示 Javascript 中的二进制数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2803145/