您的位置:首页> 前端教程> JS教程
文章导航

JavaScript 二进制、八进制与十六进制

2019-12-20 09:24| 作者: admin| 查看: 2776| 评论: 0|来自: 蚂蚁部落

十进制是在编程中是最为常见的,由于常见,所以也最容易被接受。

JavaScript也有表示和处理二进制、八进制和十六进制的能力。

本文仅介绍一下二进制、八进制与十六进制在JavaScript表示方式。

相互转换可以参阅二进制、八进制、十六进制与十进制转换一章节。

一.二进制:

在ES2015之前,JavaScript并没有二进制表示法。

也就是我们没法像写十进制数字一样,写一个二进制数字。

看如下代码实例:

[JavaScript] 纯文本查看 复制代码
let a=10010;
let b=010010;

声明两个变量并赋值,看起来好像二进制数字,然而并不是。

代码分析如下:

(1).10010就是一个普通的十进制数字。

(2).010010是一个八进制数字,以0开头的是八进制数字。

特别说明:严格模式下取消了八进制字面量表示法,所以010010会报错。

ES2015新增二进制表示法,以0b作为数字的起始,b是binary(二进制)的缩写。

实例如下:

[JavaScript] 纯文本查看 复制代码运行代码
let num=0b111010;
console.log(num.toString());

代码运行效果截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/20/092548h0mgp00p066sp090.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上述代码将二进制数字转换为十进制。

二.八进制:

当前有两种八进制表示法,分别罗列如下:

(1).以0起始的数字。

(2).以0O起始的数字,O是octal(八进制)的缩写。

[JavaScript] 纯文本查看 复制代码运行代码
let num=070;
console.log(num.toString());

代码运行效果截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/20/092553y0xadafaeedxz26a.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

但是并不是所有以0起始的数字都是八进制,比如091,毕竟八进制中最大数字是7。

ES5严格模式取消了八进制表示法,所以上述代码如果采用严格模式,会报错。

[JavaScript] 纯文本查看 复制代码运行代码
let num=0O70;
console.log(num.toString());

代码运行效果截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/20/092557rlfaaw5ez6tplw64.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上述是ES2015新增的八进制表示法。

三.十六进制:

十六进制数字以0x作为起始,代码实例如下:

[JavaScript] 纯文本查看 复制代码运行代码
let num=0x10;
console.log(num.toString());

代码运行效果截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/20/092602yqzokttcq46o9bzk.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上述代码将十六进制数字转换为十进制。


鲜花

握手

雷人

路过

鸡蛋

最新评论

返回顶部