• 【每日知识】进制转换:二进制、八进制、十六进制


    前言

    在JavaScript中,我们可以分成两种类型:

    基本类型;

    复杂类型;

    两种类型的区别是:存储位置不同。

    1.基本类型

    Undefined,Null,Number,Boolean,String和Symbol(符号,es6新增)

    2.复杂类型

    Object(对象)

    在ECMAScript,所有值都可以用以上7种数据类型之一来表示。


    我们今天讲的是基本数据类型中的Number

    Number

    数值最常见的整数类型格式则为十进制,还可以设置八进制(零开头)、十六进制(0x开头)

    1.十进制

    十进制整数是最基本的数值字面量,直接写出即可:

    let Num = 22 // 10进制的22

    2.八进制

    前缀为0,然后接响应的八进制数字,一般是0~7。

    如果字面量中的数字超过了应有的范围,就会忽略前缀0,后面的数字序列就会被当成十进制数。

    1. let num1 = 026 // 8进制的22
    2. let num2 = 081 // 无效 变为10进制

    八进制转十进制的计算方式:

    百位数 × 8的2次方 + 十位数 × 8的1次方 + 个位数 × 8的0次方  =  十进制

    如:num1=026 ;转成十进制就是:0 × 8² + 2 × 8¹ + 6 × 8º = 22

    • 除 0 以外, 任何数的 0 次方,都等于 1
    • ECMAScript 2015 或 ES6 中的八进制值通过前缀 0o 来表示;严格模式下,前缀 0 会被视为语法错误,如果要表示 八进制值,应该使用前缀 0o

    3.十六进制

    前缀为0x(区分大小写),十六进制数字是0 ~ 9 和 A ~ F.

    ABCDEF表示的二进制数字分别是:10,11,12,13,14,15

    let Num1 = 0x1A //16进制的26

    十六进制转十进制的计算方式:

    百位数 × 16的2次方 + 十位数 × 16的1次方 + 个位数 × 16的0次方  =  十进制

    如:Num1=0x1A ;转成十进制就是:1 × 16¹ + 10 × 16º = 16 + 10= 26

    4.二进制

    数值只有0和1,es6中新增了二进制字面量的表示,以0b开头

    1. let num5 = 0b101 //2进制的5
    2. let num6 = 0b111001 //2进制的57

    二进制转十进制的计算方式:

    ......百位数 × 2的2次方 + 十位数 × 2的1次方 + 个位数 × 2的0次方  =  十进制

    如:num6=0b111001 ;转成十进制就是:57

    这里推荐一个进制转换器,可以转成你想要的进制

    进制转换器

  • 相关阅读:
    四、分类算法 - 随机森林
    RMAN-08137 主库无法删除归档文件
    js函数定义方式的区别
    就业喜报:不拼一把 你怎么知道自己有多优秀
    java基础-集合
    【PAT甲级 - C++题解】1063 Set Similarity
    聚焦算力技术发展,中科驭数成功举办“新一代智算中心”技术生态沙龙
    vue之@click绑定的函数,如何实现加不加括号都可执行
    医生接诊时间难分配?看DHTMLX Scheduler如何助力门诊管理系统优化升级
    Android ViewPager2 + Fragment + BottomNavigationView 联动
  • 原文地址:https://blog.csdn.net/qq_46580087/article/details/125905813