第十一章 Math 数字常用方法

一、数字常用方法

1、在JS中的一个内置对象提供了一个方法:Math;

2、语法:Math.xxx();

3、是一个复杂数据类型;

二、数字相关方法

1、random() 出现一个随机数的

    //返回值   就是一个包含0 不含1的一个随机数 , [0 - 1) 
    var res = Math.random()
    console.log(res); // 0.43865   47771  61502  14

2、 round() 进行四舍五入的操作

    // round() 进行四舍五入的操作
    // 返回值: 就是操作完的一个结果
    var res = Math.round(425.4534)
    console.log(res); //425

3、 max()  获取最大的那个值

    // max()  获取最大的那个值
    // 返回值: 就是最大的那个值
    var res = Math.max(10,46,45,68)
    console.log(res); //68

4、 min() 获取最小的那个值

    // min() 获取最小的那个值
    // 返回值: 就是最小的那个值
    var res = Math.min(10,46,45,68)
    console.log(res); //10

5、 abs() 就是求一个数的绝对值

    // abs() 就是求一个数的绝对值
    // 返回值: 就一个绝对值
    var res = Math.abs(1-12.5431)
    console.log(res); //11.5431

6、floor() 向下取整 

    // floor()  向下取整
    // 返回值:就是取整之后的结果
    var res = Math.floor(12.5634)
    console.log(res); //12

7、ceil() 向上取整

    // ceil() 向上取整
    // 返回值就是取整之后的结果
    var res = Math.floor(12.4634)
    console.log(res); // 13

8、sqrt() 给这个数开算术平方根

    // sqrt() 给这个数开算术平方根
    // 返回值就是开完以后的结果 
    var res = Math.sqrt(16);
    console.log(res); // 4

9、pow(底数,指数)  求一个数的幂次方

    // pow(底数,指数)  求一个数的幂次方,可以写分数
    // 返回值:幂次方的结果
    var res = Math.pow(2,3)
    console.log(res); //8

10、PI 得到一个近似于π的值

    // PI 得到一个近似于π的值
    // 返回值:近似于π的值
    var res = Math.PI
    console.log(res); //3.14159265358..

三、进制转换

1、含义:达到一定位数之后向前进一位==进位计数制

2、进制转换

=> 十进制转换成其它进制

  • 语法: 要转换的数.toString(你要转成的进制数);
  • 返回值: 就是转换好的进制数, 以字符串的形式返回

=>其他进制转换成十进制

  •  语法: parseInt(你要转换的数,当做几进制看待)
  •  返回值: 就是一个转换好的十进制数      
        // 十进制转换成其它进制
        var num = 255
        var res = num.toString(16)
        console.log(res);

        // 其它进制转换成十进制
        var res = parseInt('ff',16)
        console.log(res);

四、案例

1、a-b之间出现随机整数

// a-b之间出现随机整数
function randomNum(a,b){
    return Math.floor(Math.random() * (Math.abs(a-b) + 1)) + Math.min(a,b)
}

2、获取随机颜色 用rgb形式

// 获取随机颜色 用rgb形式
function randomColor() {
    var color = ''
    var r = randomNum(0,255)
    var g = randomNum(0,255)
    var b = randomNum(0,255)
    color = `rgb($[ r ],$[ g ],$ b J)`
    return color
}

// 第二种
function randomColor(a,b) {
    // 定义一个空的字符串
    var str =''
    // 先随机出现一个整数    
    for(var i = 1;i <=3; i++){
        var num = randomNum(a,b)+ Math.min(a,b)
        str +=  num +','
    }
    str = str.slice(0,-1)
    return 'rgba('+ str + ')'
}

3、获取随机颜色 用16进制形式 #ffffff

// 获取随机颜色 用16进制形式 #ffffff
function randomColor2(color){
    var color = '#'
    for(var i = 1; i <= 3; i++){
        var s = randomNum(0,255)
        // 因为小于16只有一位,可能会导致颜色丢失,所以需要补0的操作
        s = s < 16 ? '0' + s.toString(16) : s.toString(16) 
        color += s
    }
    return color
}

// 第二种
function randomColor2(color) {
    // 首先定义一个变量字符串,并同时存储上#
    var color = '#'
    // 这里遍历6个字符,所以这个时候可以用数组进行存放
    for(var i = 1; i <= 6 ; i++){
        // 16进制有16个字符,所以这个长度应该是16
        // 之后进行进制转换
        // 小写变成大写
        color += Math.floor( Math.random()*16).toString(16).toUpperCase() 
    } 

    // 这里进行返回
    return color
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值