js内置对象Math

1. 内置对象

  • JavaScript这的对象分为3种:自定义对象、内置对象、浏览器对象
  • 前面两种对象是JS基础内容,属于ECMScript;第三个浏览器对象属于我们JS独有的,我们JS API讲解
  • 内置对象就是指JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而非必要的内容(属性和方法)
  • 内置对象能帮我们快速开发
  • JavaScript提供了多个内置对象:Math、Date、Array、String等

2. 查文档

MDN 学习内置对象

3. Math对象

Math对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,取整,最大值等)可以使用Math中的成员。

Math.PI  //圆周率
Math.floor() //向下取整
Math.ceil()  //向上取整
Math.round() //四舍五入 就近取整
Math.abs()  //绝对值
Math.max() /Math.min() //求最大和最小值
Math.random(); //随机取数
//Math是数学对象,不是一个构造函数,所以不需要用new来调用,而是直接使用里面的属性和方法
console.log(Math.PI); //圆周率
console.log(Math.max(1,99,3)); //99
console.log(Math.max(1,999,'fg')); //NaN
console.log(Math.max()); //-Infinity
//利用对象封装自己的数学对象 
var myMath = {
    PI: 3.141592653,
    max: function() {
        var max = arguments[0];
        for(var i = 1;i < arguments.length;i++){
            if(arguments[i] > max) {
               max = argument[i];
            }
        }
        return max;
    },
    min: function() {
        var min = arguments[0];
        for(var i = 1;i < arguments.length;i++){
            if(arguments[i] < min){
               min = arguments[i];
            }
        }
        return min;
    }
}
console.log(myMath.PI);  //3.141592653
console.log(myMath.max(1,5,9)); //9
console.log(myMath.min(1,5,9));  //1  
//1. 绝对值
console.log(Math.abs(1)); //1
console.log(Math.abs(-1)); //1
console.log(Math.abs('-1')); //1 隐式转换,把字符串型转换为数字型
console.log(Math.abs('fg')); //NaN
//2. 取整
//(1) Math.floor() 向下取整 往最小了取值
console.log(Math.floor(1.1)); //1
console.log(Math.floor(1.9)); //1
//(2) Math.ceil() 向上取整 往最大了取值
console.log(Math.ceil(1.1)); //2
console.log(Math.ceil(1.9)); //2
//(3) Math.round() 四舍五入
console.log(Math.round(1.1)); //1
console.log(Math.round(1.5)); //2
console.log(Math.round(1.9)); //2
console.log(Math.round(-1.1)); //-1
console.log(Math.round(-1.5)); //-1
//1. Math.random()对象随机取数
console.log(Math.random());
//2. 取两个数之间的随机数
function getRandom(min,max) {
    return Math.floor(Math.random() * (max-min+1)) + min;
}
console.log(getRandom(1,10));
//3. 随机点名
var arr = ['张三','李四','fg','思思','花花','甜甜'];
console.log(arr[getRandom(0,arr.length-1)]);
//猜数字
function getRandom(min,max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}
var random = getRandom(1,10);
while(true) {
    var num = prompt('你猜 输入1~10之间的一个数字');
    if(num>random) {
       alert('猜大了');
    } else if(num<random) {
        alert('猜小了');
    } else {
        alert('猜对了');
        break;
    } 
}
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FG.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值