Day17内置对象--Math

image

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>内置对象--math</title>
</head>

<body>
  <script>
    // math拥有一些数学常数属性和数学函数方法
    // 属性
    console.log(Math.PI)//3.141592653589793
    // 方法
    // ceil向上取整   即取大于这个数本身的最小整数
    console.log(Math.ceil(1.1))
    console.log(Math.ceil(1.2))
    console.log(Math.ceil(1.3))
    console.log(Math.ceil(1.5))//都输出2
    // floor向下取整  与ceil相反
    console.log(Math.floor(1.2))
    console.log(Math.floor(1.3))
    console.log(Math.floor(1.4))
    console.log(Math.floor(1.5))//都输出1
    // 四舍五入 round
    console.log(Math.round(1.2))
    console.log(Math.round(1.4))//1
    console.log(Math.round(1.5))//2
    // 如果参数的小数部分大于 0.5,则舍入到相邻的绝对值更大的整数。如果参数的小数部分小于 0.5,则舍入到相邻的绝对值更小的整数。如果参数的小数部分恰好等于 0.5,则舍入到相邻的在正无穷(+∞)方向上的整数。
    console.log(`===================================`)
    x = Math.round(20.49); //20
    x = Math.round(20.5); //21
    x = Math.round(-20.5); //-20  
    x = Math.round(-20.51); //-21

    // Math只能对数字生效,无法对字符串生效 可以使用parseInt
    parent(1.2)//1
    parent('12px')//12
    // 都取整数
  </script>
</body>

</html>

运用到随机数函数上:
image

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>随机函数</title>
</head>

<body>
  <script>
    // random()不输入范围时, 默认左闭右开,抽0~1,中的一个随机小数
    // console.log(Math.random())

    // 0~10,之间的整数
    console.log(Math.floor(Math.random() * 11))
    let arr = ['red', 'green', 'blue']
    let random = Math.floor(Math.random() * arr.length)
    console.log(arr[random])
    // 取N到M的随机整数
    function getRandom(N, M) {
      return Math.floor(Math.random() * (M - N + 1)) + N
    }
    console.log(getRandom(4, 6))
  </script>
</body>

</html>

下面用一个点名案例来熟练随机函数的应用

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>点名案例</title>
</head>

<body>
  <script>
    let arr = ['马超', '赵云', '黄忠', '张飞', '刘备', '曹操', '关羽']
    // 1.先得到一个随机数组作为点名的索引  在这里的数组是0~6
    let random = Math.floor(Math.random() * arr.length)
    // 2.页面输出元素
    document.write(arr[random])

    //优化,输出后不在原数组内显示
    arr.splice(random, 1)
    console.log(arr)
  </script>
</body>

</html>
posted @ 2026-01-19 20:34  冰涿  阅读(0)  评论(0)    收藏  举报