电商商城定制开发【JavaScript 零基础入门】内置对象 (一) ------ Math对象

📀 在Java Script 电商商城定制开发中一共有三类对象,分别是 ‘电商商城定制开发自定义对象’,‘内置对象’,‘电商商城定制开发浏览器对象’,电商商城定制开发其中前两类属于JS电商商城定制开发基础中的内容,属于ECMA Script,而浏览器对象属于JS独有的一部分内容。在日常代码开发中有很多代码需要频繁使用,例如数学类,日期类,以及Array的一些方法等,对此便有了一些JS的自带对象,这些自带对象提供了很多可以直接使用的属性与方法,使得代码更为精炼。


JS中比较常见的内置对象为: Math,Date,Array,String 这篇文章我们讲解 Math 对象


前言:

🎨 在开始之前我们先推荐一个非常常用的文档工具---- MDN文档,在代码开发中遇到不熟悉的内置对象方法,我们可以打开此文档来查阅,该文档网址为:

🎨 Math 数学对象并不是一个构造函数,所以我们不需要 new 来创建,直接使用其属性和方法即可。


一:圆周率

  • Math.PI

console.log(Math.PI)


 二:最大最小值

  • Math.max(number1,number2,number3......)
  • Math.min(number1,number2,number3......)

注意:其中如果括号里没有参数,输出结果为 -,如果括号内参数有任何一个不能被转换的数值(例如字符串),则输出结果为NaN,但是如果出现了字符串型的数字,则可以通过隐式转换为数字型,不影响结果输出。

  1. console.log(Math.max()); //结果为 -Infinity
  2. console.log(Math.max(2,3,5,7,4,9)); //结果为9
  3. console.log(Math.min(2,3,5,7,4,9)); //结果为2
  4. console.log(Math.min(2,3,5,7,'小明')); //结果为 NaN
  5. console.log(Math.min('2',3,5,7,4,9)); //结果为2,会将'2'隐式转换为数字型2


三:绝对值

  • Math.abs(number)

注意:如果括号内没有参数,输出结果为 NaN,如果括号内参数有任何一个不能被转换的数值(例如字符串),则输出结果为NaN,但是如果出现了字符串型的数字,则可以通过隐式转换为数字型,不影响结果输出。(同上)

  1. console.log(Math.abs()); // 结果为 NaN
  2. console.log(Math.abs(-1)); //结果为1
  3. console.log(Math.abs(1)); //结果为1
  4. console.log(Math.abs('-1')); //结果为1,隐式转换同上
  5. console.log(Math.abs('小明')); //结果为 NaN


四:随机数(重要)

  • Math.random()

注意: 随机生成一个区间在[0,1)之间的浮点数

  1. <script>
  2. console.log(Math.random());
  3. console.log(Math.random());
  4. console.log(Math.random());
  5. console.log(Math.random());
  6. console.log(Math.random());
  7. console.log(Math.random());
  8. </script>


五:得到两个数之间的随机整数(非常重要)

  • Math.floor(Math.random()*(max-min+1))+min

注意:可以得到两个数之间的随机整数,并且包含这两个整数,此处我们封装一个函数

  1. <script>
  2. function randomnum(min,max){
  3. return Math.floor(Math.random()*(max-min+1))+min;
  4. }
  5. console.log(randomnum(1,100));
  6. console.log(randomnum(1,100));
  7. console.log(randomnum(1,100));
  8. </script>


六:拓展案例1 随机点名游戏

🎨 利用上一版块的获取两个数之间的随机整数的方法,将数个名字放入一个数组内,根据获取到的随机数作为索引去获取数组内的名

  1. <script>
  2. var name1=['卡卡西','宇智波带土','宇智波鼬','宇智波斑','宇智波佐助','鸣人'];
  3. function random_num(min,max){
  4. return Math.floor(Math.random()*(max-min+1))+min;
  5. }
  6. var num=random_num(0,name1.length-1)
  7. console.log(name1[num]);
  8. </script>


 七:拓展案例2 猜数字小游戏

 📀  1.死循环,不限制猜测次数

  1. <script>
  2. function random_num(min,max){
  3. return Math.floor(Math.random()*(max-min+1))+min;
  4. }
  5. var true_num=random_num(0,100);
  6. while(1){
  7. var num=prompt('请输入 0-100 范围内的一个整数');
  8. if(true_num>num){
  9. alert('您猜小了');
  10. }
  11. else if(true_num<num){
  12. alert ('您猜大了');
  13. }
  14. else{
  15. alert('恭喜你!您猜对了!');
  16. break;
  17. }
  18. }
  19. </script>

 📀  2.限制猜测次数

写法有多种,你也可以使用 for 循环或别的

  1. <script>
  2. function random_num(min,max){
  3. return Math.floor(Math.random()*(max-min+1))+min;
  4. }
  5. var true_num=random_num(0,100);
  6. var flag=10;
  7. while(flag){
  8. var num=prompt('请输入 0-100 范围内的一个整数,您还剩下'+flag+'次机会');
  9. flag--;
  10. if(true_num>num){
  11. alert('您猜小了');
  12. }
  13. else if(true_num<num){
  14. alert ('您猜大了');
  15. }
  16. else{
  17. alert('恭喜你!您猜对了!');
  18. break;
  19. }
  20. }
  21. if(flag<=0){
  22. alert('您的机会已耗尽');
  23. }
  24. else{
  25. alert('游戏结束,欢迎下次再来')
  26. }
  27. </script>

 

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发