JavaScript的进制转换
先介绍两个API:
一、number 类型的 toString 方法
语法
numberObject.toString( [ radix ] )
参数
| 参数 | 描述 |
|---|---|
| radix | 可选/Number类型指定的基数(进制数),默认为10。 |
参数radix支持 [2, 36] 之间的整数。例如:参数值为2,则表示二进制;为8,则表示八进制;为16,则表示十六进制。
如果省略参数radix,则默认为10(十进制)。
返回值
toString()函数的返回值为String类型,返回该数字指定进制形式的字符串。
二、string 转 number 的方法
语法
parseInt( numString [, radix ] )
参数
| 参数 | 描述 |
|---|---|
| numString | String类型需要转换为整数的字符串。 |
| radix | 可选/Number类型指定的进制基数。 |
参数radix可以是一个介于 [2, 36] 之间的数值。例如:参数radix为2,则将numString视作二进制;参数radix为8,则视作八进制;参数radix为16,则视作十六进制。
如果没有提供radix参数,则parseInt()函数将会根据参数numString的前缀来决定转换的进制基数。如果numString的前缀是0x
,则转换为十六进制;如果前缀是0
,则转换为八进制;其他情况均转换为十进制。
返回值
parseInt()函数的返回值为Number类型,返回转换后的整数。
如果指定的字符串中包含非数字字符,只要字符串开头的一部分符合整数的转换规则,则parseInt()函数会将这一部分字符串转化为整数(从字符串开头,直到遇到非数字字符为止)。如果字符串以非数字字符开头,则返回NaN。
上代码!
数字转2进制
(100).toString(2) // "1100100"
数字转8进制
(100).toString(8) // "144"
数字转16进制
(100).toString(16) // "64"
16进制转10进制
parseInt(0x64) // 100
parseInt('0x64') //
parseInt('0x64',16) // 100 第二参数写了更好,以免迷糊
parseInt('ff') // NaN
parseInt('ff',16) // 255 这里没有0x打头,必须要注明要转的基数
8进制转10进制
parseInt(0100); // 64 先转成字符串,再以8进制解析
parseInt("0100",8); // 64 正确写法,无歧义 !!!
parseInt("0100"); // 100 官方表示不确定:但是测试结果,谷歌浏览器当成10进制输入。所以不建议这样写
2进制转10进制
parseInt("11",2); //返回 3
补充
ES6支持二进制和八进制的字面量
1、在数字前面添加 0o 或者 0O 即可将其转换为八进制
2、在数字前面添加 0b 或者 0B 即可将其转换为二进制
let oValue = 0o10;
console.log(oValue); // let bValue = 0b10;
console.log(bValue); //
Thanks for watching !
JavaScript的进制转换的更多相关文章
- 【JavaScript】进制转换&位运算,了解一下?
前言 在一般的代码中很少会接触到进制和位运算,但这不代表我们可以不去学习它.作为一位编程人员,这些都是基础知识.如果你没有学过这方面的知识,也不要慌,接下来的知识并不会很难.本文你将会学习到: 进制转 ...
- JavaScript:进制转换。
最近做了一些进制的转换的点. 十进制转二进制: let a = 45; a.toString(2); //"101101" let b = 123; b.toString(2); ...
- javascript 数字进制转换
//十进制转其他 var x=110; alert(x); alert(x.toString(8)); alert(x.toString(32)); alert(x.toString(16)); // ...
- javascript 10进制和64进制的转换
原文:javascript 10进制和64进制的转换 function string10to64(number) { var chars = '0123456789abcdefghigklmnopqr ...
- javascript . 04 匿名函数、递归、回调函数、对象、基于对象的javascript、状态和行为、New、This、构造函数/自定义对象、属性绑定、进制转换
匿名函数: 没有名字的函数,函数整体加小括号不报错, 函数调用 : a:直接调用 (function (){函数体}) ( ) ; b:事件绑定 document.onlick = functio ...
- JavaScript中进制之间的转换
JavaScript中进制之间的转换 //十进制转其他 var x = 100; alert(x); alert(x.toString(2)); //转2进制 alert(x.toString(8)) ...
- JavaScript下的进制转换
JavaScript下的进制转换 //十进制转其他进制 var num = 99; console.log('十进制: ', num); console.log('八进制:', (num).toStr ...
- 11 JavaScript Number原始值&对象&科学记数法&范围&进制转换&溢出Infinity&NaN
JavaScript Number对象 是经过封装的能处理数字值的对象 由Number()构造器创建 只有一种数字类型 可以使用也可以不使用小数点书写数字 JavaScript原始值与对象: 在Jav ...
- JavaScript中的多种进制与进制转换
进制介绍 JavaScript 中提供的进制表示方法有四种:十进制.二进制.十六进制.八进制. 对于数值字面量,主要使用不同的前缀来区分: 十进制(Decimal): 取值数字 0-9:不用前缀. 二 ...
随机推荐
- ps:HSB色彩模式
前面我们已经学习过了两大色彩模式RGB和CMYK.色彩模式有很多种,但这两种是最重要和最基础的.其余的色彩模式,实际上在显示的时候都需要转换为RGB,在打印或印刷(又称为输出)的时候都需要转为CMYK ...
- less: 变量
在Less中声明变量方式是使用@符号 @test_width: 300px; .box { width: @test_width; height: @test_width; background-co ...
- bzoj5518 & loj3046 「ZJOI2019」语言 线段树合并+树链的并
题目传送门 https://loj.ac/problem/3046 题解 首先问题就是问有多少条路径是给定的几条路径中的一条的一个子段. 先考虑链的做法. 枚举右端点 \(i\),那么求出 \(j\) ...
- [洛谷 P1013] NOIP1998 提高组 进制位
问题描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: L K V E L L K V E K K V E KL V V E KL KK E E K ...
- 【ElicitSearch】启动流程
一.集群启动流程 1.选举主节点 许多节点启动,集群干的第一件事儿就是选主,之后的的流程由主节点触发. 先确定唯一的.大家公认的主节点:再想办法把最新的及其原数据复制到选举的主节点上. 选主是对Bul ...
- 【Python】安装Python3,打印HelloWorld
安装地址: https://www.python.org/ 安装时勾选添加path然后一路next,搞定! 查看是否安装成功: cmd中输入python出现如下界面 在vscode中新建一个Hello ...
- ueditor编辑器中从word中复制带图片的信息的操作演示
我司需要做一个需求,就是使用富文本编辑器时,不要以上传附件的形式上传图片,而是以复制粘贴的形式上传图片. 在网上找了一下,有一个插件支持这个功能. WordPaster 安装方式如下: 直接使用Wor ...
- [luogu]P1315 观光公交[贪心]
[luogu]P1315 [NOIP2011]观光公交 ——!x^n+y^n=z^n 题目描述 风景迷人的小城Y 市,拥有n 个美丽的景点.由于慕名而来的游客越来越多,Y 市特意安排了一辆观光公交车, ...
- 四-1、Cadence Allegro推荐操作方式和视图命令
第四章:实用命令详解 1.Cadence Allegro推荐操作方式: 激活命令 选择操作对象的属性 设置相关的命令参数 单击对应的对象 结束命令 2.视图命令:
- js常见的几种设计模式
一.单例模式 单例模式也称作为单子模式,更多的也叫做单体模式.为软件设计中较为简单但是最为常用的一种设计模式. 在JavaScript里,实现单例的方式有很多种,其中最简单的一个方式是使用对象字面量的 ...