数字进制转换
什么是进制
●进制就是达到指定地位时候进一位
●常见的进制
○十进制: 0 1 2 3 4 5 6 7 8 9 10 11 12 ... 99 100 101
○二进制: 0 1 10 11 100 101 110 111 1000
○八进制: 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 21
○十六进制: 0 1 2 3 4 5 6 7 8 9 a b c d e f 10 ... 19 ... 1a 1b 1c 1d 1e 1f 20 21 ...

十进制转换成其它进制
●toString() 办法能够在数字转成字符串的时候给出一个进制数
○语法: toString(你要转换的进制)
○返回值:转换好进制当前的数字
■转换好的数字是字符串类型

var num = 100console.log(num.toString(2)) // 1100100console.log(num.toString(8)) // 144console.log(num.toString(16)) // 64

其它进制转换成十进制
●parseInt() 办法能够在字符串转成数字的时候把字符串当成多少进制转成十进制
○语法: parseInt(要转换的字符串,当作几进制来转换)
○返回值:转换后的数字 你把数字当做几进制应用, 转换成十进制
■后果是数字类型

var str = 100console.log(parseInt(str, 8)) // 64 把 100 当作一个 八进制 的数字转换成 十进制 当前失去的console.log(parseInt(str, 16)) // 256 把 100 当作 十六进制 的数字转换成 十进制 当前失去的console.log(parseInt(str, 2)) // 4 把 100 当作 二进制 的数字转换成 十进制 当前失去的

保留小数位
●作用:toFixed() 办法可把 Number 四舍五入为指定小数位数的数字。
●语法:数字.toFixed(要保留的小数点后的位数)
●返回值:返回一个小数点后有固定的 多少位数字的数字,是一个字符串类型
○小数位不够的时候, 应用 0 补齐

var n = 100.123// 把 n 保留 2 位小数当前赋值给 resvar res = n.toFixed(2)console.log(res) //100.12//返回的是字符串类型console.log(typeof res); //string//保留的小数位数多余原数字的小数位数var res1 = n.toFixed(4)console.log(res1) //100.1230  保留的位数不够用0补齐

案例-随机整数封装

function fn(a, b) {  // 1. 确定两个数字的大小关系  var min = Math.min(a, b)  var max = Math.max(a, b)  // 2. 求出两数差  var sub = max - min  // 3. 求出 0 ~ sub 之间的随机整数  var r1 = Math.floor(Math.random() * (sub + 1))  // 4. 把 r1 + min  var res = r1 + min  return res}//优化上述计划1:function fn(a, b) {  // 1. 确定两个数字的大小关系  var min = Math.min(a, b)  var max = Math.max(a, b)  return Math.floor(Math.random() * (max - min + 1)) + min}// 优化上述计划2:function fn(a, b) {  return Math.floor(Math.random() * (Math.abs(a - b) + 1)) + Math.min(a, b)}

案例-封装函数返回随机色彩字符串

//  这是咱们分装好的 获取随机整数的办法function randomNum(a, b) {    return Math.floor(Math.random() * (Math.abs(a - b) + 1)) + Math.min(a, b)}// rgb 色彩实现// 先定义一个函数function randomColor() {    // 定义一个色彩    var color = ''    // 设置咱们的色彩    var r = randomNum(0, 255)    var g = randomNum(0, 255)    var b = randomNum(0, 255)    // 把咱们的色彩拼接成rgb的格局    color = `rgb(${r},${g},${b})`    // 返回咱们定义的色彩    return color}// 十六进制的色彩实现 function randomColor() {    // 定义一个字符串 , 因为是十六进制的所以咱们在定义的时候就加上#    var color = '#'    // 因为咱们须要三个随机数,咱们就循环三次    for (var i = 0; i < 3; i++) {        // 失去0-255之间的随机数        var r = randomNum(0, 255)        // 判断咱们失去的随机数是不是小于16,因为小于16的数转成        // 十进制是一位,不能满足咱们的色彩要求 , 须要咱们补一个 0         r = r < 16 ? '0' + r.toString(16) : r.toString(16)        // 拼接到咱们的色彩字符串上        color += r    }    // 返回咱们定义的色彩    return color}// // 应用var res = randomColor()console.log(res);// document.body.style.backgroundColor = res