javascript 取整,取余数 math方法
1.丢弃小数部分,保留整数部分
parseInt() 函数可解析一个字符串,并返回一个整数。
parseInt(string, radix)
| 参数 | 描述 |
|---|---|
| string | 必需。要被解析的字符串。 |
| radix |
可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。 如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。 如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。 |
parseInt("10"); //返回 10
parseInt("19",10); //返回 19 (10+9)
parseInt("11",2); //返回 3 (2+1)
parseInt("17",8); //返回 15 (8+7)
parseInt("1f",16); //返回 31 (16+15)
parseInt("010"); //未定:返回 10 或 8
2.向上取整,有小数,则整数部分加1
ceil() 方法执行的是向上取整计算,它返回的是大于或等于函数参数,并且与之最接近的整数。
Math.ceil(0.60) //
Math.ceil(0.40) //
Math.ceil(5) //
Math.ceil(5.1) //
Math.ceil(-5.1) // -5
Math.ceil(-5.9) // -5
3.四舍五入
round() 方法可把一个数字舍入为最接近的整数。
Math.round(0.60) //
Math.round(0.40) //
Math.round(5) //
Math.round(5.1) //
Math.round(-5.1) // -5
Math.round(-5.9) // -6
4.向下取整
floor() 方法执行的是向下取整计算,它返回的是小于或等于函数参数,并且与之最接近的整数。
Math.floor(0.60) //
Math.floor(0.40) //
Math.floor(5) //
Math.floor(5.1) //
Math.floor(-5.1) // -6
Math.floor(-5.9) // -6
5.取余数
0%4 //
1%4 //
2%4 //
3%4 //
4%4 //
5%4 //
var maxnum = Math.max(12,6,43,58,70);
alert(maxnum); //"70"
6.2 min() 方法,比较一组数值中的最小值,返回最小值。
var minnum = Math.min(12,6,43,58,70);
alert(minnum); //"6"
7.产生随机数方法
random()方法,返回一个大于等于0小于1的随机数,其实是小数值。
随机数范围用区间表示即为[0,1),包含0不包含1。
这里有一个公式:
返回的值 = Math.floor(Math.random() * 可能值的总数 + 第一个可能的值),
套用这个公式可以返回某个整数范围内的随机数。
我们注意到了上面的公式中调用了 floor() 方法,因为 random() 总是返回一个小数,而我们要返回的是整数,所以得对其返回值进行舍入操作。
比如我们要随机产生1到10之间的整数,[1,10],包含1和10,可以套用公式编写下面的代码:
var num = Math.floor(Math.random() * 10 + 1);
[1,10] 之间包含10个数,因此可能值的总数是10,则 random()*10,即产生 [0,10) 之间的随机数;
第一个可能的值是1,则 random()*10+1,即产生 [1,11) 之间的随机数;
此时它产生的最小整数是1了,但最大整数并不是10,它会产生10.xxxxxxxxxx 这样的小数,于是用 floor() 将其向下舍入,这样它产生的最大整数就是10了。
如果要随机产生 [5,10] 之间的整数,那么套用公式即可编写这样的代码:
var num = Math.floor(Math.random() * 6 + 5);
[5,10] 之间包含6个数,所以可能值的总数是6,则 random()*6;第一个可能的值是5,所以 random()*6+5;最后用 floor() 将其向下舍入。
8.其他计算方法
下面的这样方法都是用来进行各种简单或复杂的计算。
Math.abs(num) 返回 num 的绝对值
Math.exp(num) 返回 Math.E 的 num 次幂
Math.log(num) 返回 num 的自然对数
Math.pow(num,power) 返回 num 的 power 次幂
Math.sqrt(num) 返回 num 的平方根
Math.acos(x) 返回 x 的反余弦值
Math.asin(x) 返回 x 的反正弦值
Math.atan(x) 返回 x 的反正切值
Math.atan2(y,x) 返回 y/x 的反正切值
Math.cos(x) 返回 x 的余弦值
Math.sin(x) 返回 x 的正弦值
Math.tan(x) 返回 x 的正切值
javascript 取整,取余数 math方法的更多相关文章
- JS对象 向下取整floor() floor() 方法可对一个数进行向下取整。 语法: Math.floor(x)
向下取整floor() floor() 方法可对一个数进行向下取整. 语法: Math.floor(x) 参数说明: 注意:返回的是小于或等于x,并且与 x 最接近的整数. 我们将在不同的数字上使用 ...
- JS对象 向上取整ceil() ceil() 方法可对一个数进行向上取整。 语法: Math.ceil(x) 注意:它返回的是大于或等于x,并且与x最接近的整数。
向上取整ceil() ceil() 方法可对一个数进行向上取整. 语法: Math.ceil(x) 参数说明: 注意:它返回的是大于或等于x,并且与x最接近的整数. 我们将把 ceil() 方法运用到 ...
- pthon中取整的几个方法round、int、math
取整的几种方法:1.四舍五入 round(x) 2.向下取整 int(x) 3.取商和余 4.向上取整,需要用到math.ceil(x)(可以理解成大于x且最接近x的整数)import math 5 ...
- 【转】java取整和java四舍五入方法
java取整和java四舍五入方法 import java.math.BigDecimal; import java.text.DecimalFormat; public class TestGetI ...
- php浮点数计算比较及取整不准确解决方法
原文:php浮点数计算比较及取整不准确解决方法 php有意思的现象,应该是很多编程语言都会有这样的现象.这个是因为计算机的本身对浮点数识别的问题..... $f = 0.58; var_dump(in ...
- js 取整 取余
1.取整//保留整数部分parseInt(3/2) // 1 2.向上取整// 向上取整,有小数就整数部分加1Math.ceil(3/2) // 2 3.四舍五入// 四舍五入Math.round(3 ...
- C 逻辑运算, 移位运算 , 取整 , 取模(取余)
一. 按位运算 (快速操作数据的某个位) ^ 按位异或 ~ 按位取反 & 按位与 | 按位或 二. 逻辑运算 && 逻辑与 有一个值为 0 ,值为 0 || ...
- javascript 取整,取余数
1.丢弃小数部分,保留整数部分 parseInt(5/2) 2 2.向上取整,有小数,则整数部分加1 Math.ceil(5/2) 3 3.四舍五入 Math.round(5/2) 3 4.向下取整 ...
- javaScript中小数取整,四种方法的比较
1.parseInt:只取整数位例如:parseInt(3.7) 取整结果为:3parseInt(-1.1) 取整结果为:-1 2.Math.floor :向下去整,取大的整数例如:Math.floo ...
随机推荐
- redis的缓冲击穿|缓冲雪崩|缓冲淘汰
Redis 的缓存穿透和击穿 查询数据 缓存中有,从缓存中返回 缓存中没有,从数据库中查找,数据库中命中结果 ,将查询到的数据保存到缓存中 缓存中没有,从数据库中查找,数据库中也没有 , 不在缓存中保 ...
- ARC下野指针 EXC_BAD_ACCESS错误
一般都是多线程造成的,某一个线程在操作一个对象时,另一个线程将此对象释放,此时就有可能造成野指针的问题.一种解决办法是如果都是UI操作则将这些操作都放在主线程去执行. 通常出现此问题的地方都在RAC, ...
- 剑指offer例题——链表中倒数第K个结点
题目描述 输入一个链表,输出该链表中倒数第k个结点. 编程过程 此处采用两个指针依次后移的方法来求解,首先,用一个指针移到第k个位置,之后将第二个指针放在第一位,与第二个指针一同移动,当第二个指针移动 ...
- 并发中的volatile
目录 1. 概述 2. volatile的特性 3. volatile写-读的内存语义 4. volatile内存语义的实现 5. JSR-133为什么要增强volatile的内存语义 6. 总结 1 ...
- 20162322 朱娅霖 作业005&006 栈,队列
20162322 2017-2018-1 <程序设计与数据结构>第五.六周学习总结 教材学习内容总结 集合的介绍(总述) 集合是收集并组织其他对象的对象.主要分为线性集合(集合中的元素排成 ...
- 顶级项目孵化的故事系列——Kylin的心路历程【转】
现在已经名满天下的 Apache Kylin,是 Hadoop 大数据生态系统不可或缺的一部分,要知道在 Kylin 项目早期,可是以华人为主的开源团队,一路披荆斩棘经过几年的奋斗,才在 Apache ...
- java基础-- 之类型转换 和 一些运算符
--- 首先 看一个 Scanner 类 import java.util.Scanner; public class TestScanner { public static void ma ...
- 545. Boundary of Binary Tree二叉树的边界
[抄题]: Given a binary tree, return the values of its boundary in anti-clockwise direction starting fr ...
- Python爬虫项目--爬取链家热门城市新房
本次实战是利用爬虫爬取链家的新房(声明: 内容仅用于学习交流, 请勿用作商业用途) 环境 win8, python 3.7, pycharm 正文 1. 目标网站分析 通过分析, 找出相关url, 确 ...
- js函数内未声明变量
<script> function test(){ testd = "Hello"; } test(); alert(testd); </script> 当 ...