js中Math常用的函数 您所在的位置:网站首页 math库的数学函数有哪些 js中Math常用的函数

js中Math常用的函数

2024-05-31 22:23| 来源: 网络整理| 查看: 265

Math对象

JS中有许多的内置对象。其中,Math对象封装了许多常用的数学函数。

Math.random

该方法用于生成一个随机数0~1 包含0 不包含1

// 获取一个从0到9的随机整数数字 var r = Math.random(); var num = parseInt(Math.random() * 10);对于整个函数只是单纯的负责取整,而不是四色五入 console.log(num);

对于求取5-9之间的数字

// parseInt(Math.random() * 5 + 5) => 从5到9的随机数字 // 获取一个从0 ~ 4的随机数 // var num = Math.random() * 5; // 让num + 5 变为从 5 ~ 9的随机数 // num = num + 5; // 取整 // num = parseInt(num); // console.log(num);

简单案例

// 完成:从数字中随机挑选一个成员 // var arr = ["张三", "李四", "王五", "赵六", "田七"]; // 获取随机数 // var r = Math.random(); // 让该随机数 乘以数组的长度 // var index = arr.length * r;如果对其结果取整的话,达不到数字5 // 取整 // index = parseInt(index); // 根据index获取成员 // var result = arr[index]; // console.log("这一次选择的人是" + result); // document.write(result);

Math.abs

该方法用于获取一个数的绝对值

// 定义一个负数 var num = -10; // 获取它的绝对值 var abs = Math.abs(num); // 输出 console.log(abs); // 10

取正5和负5之间的随机数

// var r = Math.random(); // var num = parseIn1t(r * 11 - 5); // console.log(num); // r * 11; 0 ~ 10 // r * 11 - 5; -5 ~ 5 // parseInt(r * 11 - 5); -5 ~ 5 // var abs = Math.abs(num); // console.log(abs);

Math.ceil

向上取整

var num = 1.1; var result = Math.ceil(num); console.log(result); // 2

Math.floor

向下取整

var num = 1.1; var result = Math.floor(num); console.log(result); // 1

Math.round

四舍五入

var num = 1.4; var num1 = 1.5; console.log(Math.round(num)); // 1 console.log(Math.round(num1)); // 2

Math.pow

用于求一个数的几次方 第一个参数是底数 第二个参数是指数

var num = Math.pow(2, 8); console.log(num); // 256

Math.max

求所有参数中的最大值

var max = Math.max(1, 2, 56, 78, 99, 0, 46, 23); console.log(max); // 99

小案例

// 随机一个长度 10 ~ 50位的数组 // 随机填充一些数字 这些数字的范围 77 ~ 99 // 求该数组中的最大值 // 分析: // 既然要随机生成一个不定长度的数组 // new Array(这里得有一个10 ~ 50的数) 解决方案: 利用Math.random() 获取10 ~ 50 代码: var length = parseInt(Math.random() * 41 + 10); 最终把length填入参数中 或者设置为数组的length属性 // 数组已经生成 // 循环生成77 ~ 99 的随机数 // Math.random() * 23 + 77//对于由于random得不到1,所以在乘的数上加1,可以达到22的数字大小; // 生成长度 // var length = parseInt(Math.random() * 41 + 10); // // 根据长度定义数组 // var arr = new Array(length); // // console.log(arr); // // 循环 // for (var i = 0; i < arr.length; i++) { // arr[i] = parseInt(Math.random() * 23) + 77; // } // console.log(arr); // var max = Math.max(...arr); // 如果arr是 [1, 2, 3, 4] !!! 超纲语法 Math.max(...arr) !!! 该代码等价于 Math.max(1, 2, 3, 4); // 如果arr是 [45, 76, 88, 101, 44] 该代码等价于 Math.max(45, 76, 88, 101, 44) // var index = arr.indexOf(max); // 找到该最大值的位置 // 删除 // arr.splice(index, 1, "原来的最大值"); // console.log(arr);

Math.min

求min参数中的最小值

var min = Math.min(1, 2, 56, 78, 99, 0, 46, 23); console.log(min); // 1

小案例

// 随机一个长度 10 ~ 50位的数组 // 随机填充一些数字 这些数字的范围 77 ~ 99 // 求该数组中的最大值 // 定义长度 // var length = parseInt(Math.random() * 41 + 10); // 根据长度定义数组 // var arr = new Array(length); // console.log(arr); // 循环 // for (var i = 0; i < arr.length; i++) { // arr[i] = parseInt(Math.random() * 23) + 77; // } // var result = Math.min(...arr); // 这里因为是超纲内容 所以不便过多介绍 // var result = Math.min.apply("", arr); // apply方法介绍 它是函数的方法 // 1 改变函数中的this指向 // 2 以数组的形式传递参数 // 分析: 因为写法必须是 (第一种)函数.apply(); 而不能是(第二种)函数().apply() // 因为 第一种的写法 函数本身没有自己执行 而是被apply执行 // 第二种的写法是 函数先执行 执行完以后 让函数的结果去调用apply // 既然没有圆括号,那么如果原函数需要参数 这些参数就必须组装成一个数组 放入apply方法的第二个参数中 /* Math.min(1, 2, 3, 4); Math.min.apply("", [1, 2, 3, 4]); */ // console.log(result);

额外说明: …语法是ES6中的语法 可以将数组的每一个成员拆解成参数传递给函数

额外说明: apply方法是所有函数都有的方法 作用是改变函数中的this指向并以数组的形式传递参数

常见的Math函数的方法

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有