💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
[TOC] # 1.内置对象 ●JavaScript 中的对象分为3种:自定义对象、内置对象、浏览器对象 ●前面两种对象是JS基础内容,属于ECMAScript;第三个浏览器对象属于我们JS独有的,我们JS API讲解 ●**内置对象**就是指JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是 最基本而必要的功能(属性和方法) ●内置对象最大的**优点**就是帮助我们**快速开发** ●JavaScript提供了多个内置对象:**Math、Date.、Array、 String**等 ![](https://img.kancloud.cn/5a/3c/5a3c1bdafcf384ba71346b3db00d0b5f_834x394.png) # 2.查文档 ## 2.1 MDN 学习一个内置对象的使用,只要学会其常用成员的使用即可,我们可以通过查文档学习,可以通过MDNW3C来查询。 Mozilla开发者网络( MDN )提供了有关开放网络技术( Open Web )的信息,包括HTML、CSS 和万维网及HTML5应用的API。 MDN:[https://developer.mozilla.org/zh-CN/](https://developer.mozilla.org/zh-CN/) ## 2.2如何学习对象中的方法 1.查阅该方法的功能 2.查看里面参数的意义和类型 3.查看返回值的意义和类型 4.通过demo进行测试 # 3.Math对象 (数学对象) //**Math数学**对象**不是一个构造函数**,所以我们**不需要new**来调用而是直**接使用里面的属性和方法即可** ~~~ console.log(Math.PI); //一个属性圆周率 console.log(Math.max(1, 99, 3)); // 99 console.log(Math.max(-1, -10)); // -1 console.log(Math.max(1, 99, 'pink老师')); // NaN console.log(Math.max()); // -Infinity ~~~ ## 案例:封装自己的数学对象 利用对象封装自己的数学对象里面有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] < max) { min = arguments[i]; } } return min; } 使用 console. log(myMath.PI) ; //调用对象属性 console . log (myMath.max(1, 5, 9)); //调用对象方法 console. log ( myMath.min(1 ,5,9)); //调用对象方法 ~~~ # 3.1 Math概述 Math对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,取整、最大值等)可以使用Math中的成员。 ~~~ Math.PI//圆周率 Math.floor ()//向下取整 Math.ceil ()//向上取整 Math.round()// 四舍五入版 就近取整注意-3.5 结果是-3 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('pink')); // NaN ~~~ ## // 2.三个取整方法 ### // (1) Math.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.cei1(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 ~~~ ## 3.2随机数方法random() (重点) // 1. Math对象随机数方法random() 返回一个随机的小数0 =< X < 1 [//2.这个方法里面不跟参数](https://2.xn--ihqpc51vjnvmka477awj2dskdosfurr/) [//3.代码验证](https://3.xn--mnq551hnen13n/) 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. log(arr[0]); console.log(arr [getRandom(0,arr.length-1)]); console.log(arr [getRandom(0, 4)]); ~~~ ## 案例:猜数字游戏 程序随机生成-一个1~ 10之间的数字,并让用户输入-一个数字, 1.如果大于该数字,就提示,数字大了,继续猜; 2.如果小于该数字,就提示数字小了,继续猜; 3.如果等于该数字,就提示猜对了,结束程序。 ### 案例分析 ①随机生成一个1~ 10的整数我们需要用到Math.random0方法。 ②需要一直猜到正确为止,所以- -直循环。 ③用while 循环合适更简单。 ④核心算法:使用if else if多分支语句来判断大于、小于、等于。 ~~~ //猜数字游戏 // 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; //退出整个循环结束程序 } } ~~~