内置对象
在说Math分象之前我们先来说一下内置对象:
1、JavaScript 中的对象分为3种:自定义对象、内置对象、浏览器对象。
2、前面两种对象是JS基础内容,属于ECMAScript;第三个浏览器对象属于我们JS独有的,我们JSAPI讲解。
3、所以内置对象就是指:JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而必要的功能(属性和方法)。
4、内置对象最大的优点就是帮助我们快速开发
5、JavaScript提供了多个内置对象:Math、Date 、Array、string等
6、最重要的一点就是因为它内置对象多我又懒所以今天就说一个Math对象…
作为补偿我今天说一个可以偷懒的方法就是下面要说的查对象。
查文档
一、MDN
学习一个内置对象的使用,只要学会其常用成员的使用即可,我们可以通过查文档学习,可以通过MDN/3C来查询。
Mozilla开发者网络(MDN)提供了有关开放网络技术( Open Web )的信息,包括HTML、CSS和万维网及HTML5应用的API。
下面推荐一个网址(不要往坏处想昂…):
MDN:https://developer.mozilla.org/zh-CN/
二、如何学习对象中的方法
1、查阅该方法的功能
2、查看里面参数的意义和类型
3、查看返回值的意义和类型
4、通过demo进行测试
好吧话不多说进入正题
Math对象
Math数学对象不是一个构造函数,所以我们不需要new来调用而是直接使用里面的属性和方法即可。
先举个栗子:
来个案例:
利用对象封装自己的数学对象,里面要有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);
console.log(myMath.max(66,123,456,159,133));
console.log(myMath.min(789,159,753,357,654));
一、Math概述
Math对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,取整,最大值等)可以使用Math中的成员。
语法 | 作用 |
---|---|
Math. PI | 圆周率 |
Math. floor () | 向下取整 |
Math. ceil () | 向上取整 |
Math. round() | 四舍五入就近取整 |
Math. abs () | 绝对值 |
Math .max () /Math.min() | 求最大和最小值 |
1、绝对值
console.log(Math.abs(1)); // 1
console.log(Math.abs(-1)); // 1
console. log(Math.abs('-1')); //隐式转换会把字符串型-1 转换为数字型
console.log(Math.abs('努力')); // NaN
2、剩下的三种取值方法
// 2.三个取整方法
// (1)、Math.floor() floor相当于地板向下取整 往最小了取值
console. log(Math. floor(1.1)); // 1
console .log(Math. floor(1.9)); // 1
// (2)、Math.ceil() ceil相当于天花板向上取整往最大了取值
console.log(Math.ceil(1.1)); // 2
console.log(Math.ceil(1.9)); // 2
// (3)、Math.round() 四舍五入其他数字都是四舍五入,但是'.5'特殊它往大了取
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
二、随机数方法random()
<script>
// 1、Math对象随机数方法random() 返回一个随机的小数比如: 0 =< x < 1
//2、这个方法里面不跟参数
//3、代码:
console . log (Math. random() );
// 4、比如:我们想要得到两个数之间的随机整数并且包含这2个整数
// 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 =['张三','张一','张二','李四','李五','李六'];
// console.1og(arr[0]);
console. log( arr[getRandom(0, arr .length - 1)]);
</script>
那个随机点名的例子截图的话挺麻烦的感兴趣的话试试吧(狗头保命)
三、来个游戏吧
规则为:
程序随机生成一个1~10之间的数字,并让用户输入一个数字
1、如果大于该数字,就提示,数字大了,继续猜;
2、如果小于该数字,就提示数字小了,继续猜;
3、如果等于该数字,就提示猜对了,结束程序。
<script>
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; //退出整个循环结束程序,记得这个一定要有,要不就是死循环了
}
}
</script>
自己试一下吧,有点懒不想做gif
[^1]:好了,这就是关于内置对象之Math分象的相关知识,希望对你有所帮助,最后让我们一起努力吧!加油!!!