js学习笔记|JavaScript内置对象 之 Math对象

Math对象
Math是一个内置对象,它具有数学常数和函数的属性和方法。它不是一个函数对象。
? 描述:Math不是一个构造函数,所以我们不需要new来调用,而是直接使用里面的属性和方法。

console.log(Math.PI); //一个属性圆周率 //一个方法:Math.max(): console.log(Math.max(1,21,32,43,9)); //43求最大值 console.log(Math.max(1,2,"a")); //NaN给定的参数中至少有一个参数无法被转换成数字,则返回NaN。 console.log(Math.max()); //- Infinity没有参数 则返回- Infinity

案例:利用对象封装自己的数学对象,里面有PI 最大值和最小值
//案例:利用对象封装自己的数学对象,里面有PI 最大值和最小值 var myMath = { PI: 3.141592653, 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.PI); //3.141592653 console.log(myMath.max(1,2,3,6,7)); //7 console.log(myMath.min(1,2,3,6,7)); //1

3.1、Math概述 Math对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值、取整、最大最小值等)可以使用Math中的成员。
几种常见的:
Math.PI //圆周率
Math.floor() //向下取整
Math.ceil() //向上取整
Math.round() //四舍五入 就近取整 注意-2.5 结果是-2
Math.abs() //绝对值
Math.max() //最大值
Math.min() //最小值
//1.绝对值方法 console.log(Math.abs(2)); //2 console.log(Math.abs(-2)); //2 console.log(Math.abs("-2")); //2隐式转换 会把字符串型 -2转换为数字型 console.log(Math.abs('pink')); //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--注意 console.log(Math.round(-1.9)); //-2

3.2、随机数方法random() 1.Math对象随机数方法 random()返回一个随机的小数 0 <= x <1
2.这个方法里面不跟参数。
3.代码验证
console.log(Math.random());

4.求两个数之间的随机整数,并且包含这两个整数
公式: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));

5.随机点名
//随机点名 var arr = ["张三","李四","王五","赵四","小明","小红"] function getRandom(min,max){ return Math.floor(Math.random() * (max - min + 1)) + min; } console.log(arr[getRandom(0,5)]); //下标也可以写(0,arr.length-1)

6.猜数字游戏
【js学习笔记|JavaScript内置对象 之 Math对象】程序随机生成一个1~10之间的数字,并让用户输入一个数字。
如果大于该数字,就提示,数字大了,继续猜。
如果小于该数字,就提示,数字小了,继续猜。
如果等于该数字,就提示猜对了,结束程序。
//猜数字游戏 //案例分析 //1、随机生成一个1~10的整数,我们需要用到Math.random()方法。 //2、需要一直猜到正确为止 //3、用while循环合适更简单。 //4、核心算法:使用if else if多分支语句来判断大于、小于、等于。 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; //退出整个循环 } }

    推荐阅读