Javascript 内置对象——Math对象

如何遍历对象:
语法格式:

for (变量 in 对象){
}

ex:

var obj={
	name:'小黑',
	age:12,
	sex:'男',
	fn:function(){
	
		}
}


for (var k in obj){
	console.log(k);		//这里k是变量输出得到的结果是属性名
	console.log(obj[k]);	//这里输出得到的结果为属性名所对应的值
}

效果:
在这里插入图片描述
接下来进入正题!

Math数学对象:
Math数学对象不是一个构造函数,所以我们不需要new来调用,而是直接使用里面的属性和方法即可
他具有数学常数和函数的属性和方法,跟数学相关的运算(求绝对值、取整、最大值等)

语法作用
Math.PI圆周率
Math.floor()向下取整
Math.ceil()向上取整
Math.round()四舍五入 就近取整
Math.abs()取绝对值
Math.max()求最大值
Math.min()求最小值

1、Math.floor()

console.log(Math.floor(1.4));
console.log(Math.floor(1.9)); 

在这里插入图片描述
他们两个的值都为1,是因为Math.floor() 是向下取整,不管你的小数位是多少直接一刀斩断,后面的就都不要了,所以这两个显示都为1

2、Math.ceil()

console.log(Math.ceil(1.4));
console.log(Math.ceil(1.9)); 

在这里插入图片描述
这个Math.ceil() ,跟上面的大不一样,上面的是怎么也不让你上去,这个呢是怎么也不让你下来,哪怕你是0.1也让你变成1,魔法的力量就是这么强大

3、Math.round()

console.log(Math.round(1.4));
console.log(Math.round(1.5));
console.log(Math.round(-1.5));

在这里插入图片描述
-1.5为什么就成了-1呢? 这里就要关注一下这个.5了,因为这个.5特殊,他会往大了取,因为-1和-2相比-1比-2大,所以这个.5就认-1做大哥了

生成一个随机数:Math.random()
这个方法里面是不跟参数的

console.log(Math.random());

在这里插入图片描述
在这里插入图片描述
他会随机生成一个0~1之间的数字,但是呢好像也没有地方可以用到,这个时候我们可以采用下面这个公式:

Math.floor(Math.random() * (max - min +1)) + min; 
//我们可以用函数封装起来用的是或方便


function getRandom(min,max){
	return Math.floor(Math.random()*(max-min+1))+min;
}
console.log(getRandom(1,10));

在这里插入图片描述
在这里插入图片描述
这样就可以自己输入一个最大值一个最小值来随机生成数了,这样是不是用处就很多了呢 (随机生成的数字包括最大值和最小值)

总和上面所学的我们来封装一个自己的数学对象,里面有PI的值、求最大值&最小值

    var myMath={
        PI:3.1415926,
        max:function(){
            var max=arguments[0];
            for (var i=1;i<arguments.length;i++){
                if (arguments[i]>max){
                    max=arguments[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.max(1,2,5,6,4,8));
    console.log(myMath.PI);
    console.log(myMath.min(1,6,8,23,0,5,-1,-5,-6));

在这里插入图片描述
综上所学来做一个猜数字的交互界面

    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;
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值