JavaScript基础 数字类型
JavaScript 数字类型
目前有两种类型:
- number
- BigInt 是表示任意长度的整数
数字的三个特殊值
- Infinity
属性用于存放表示正无穷大的数值。 - -Infinity
属性用于存放表示负无穷大的数值。 - NaN
属性用于引用特殊的非数字值。
e可以代替任意零
- 正数:
//用法
1e3 = 1 * 1000
1.23e6 = 1.23 * 1000000
- 负数
//用法
let ms = 1e-6; // 1 的左边有 6 个 0
十六进制,二进制和八进制数字
格式:
- 十六进制:0x数字
- 八进制进制:0b数字
- 二进制进制:0o数字
十六进制书不分大小写
数字方法及属性:
JavaScript 有一个内建的 Math 对象,它包含了一个小型的数学函数和常量库。
toString()
//用法
let num = 255;
num.toString(16); // ff
num.toString(2); // 11111111
floor() ceil() round() trunc()
- 数字.floor
向下舍入:3.1 变成 3,-1.1 变成 -2。 - 数字.ceil
向上舍入:3.1 变成 4,-1.1 变成 -1。 - 数字.round
向最近的整数舍入:3.1 变成 3,3.6 变成 4,-1.1 变成 -1。 - 数字.trunc(IE 浏览器不支持这个方法)
移除小数点后的所有内容而没有舍入:3.1 变成 3,-1.1 变成 -1。
//用法
Math.floor(value)
Math.ceil(value)
Math.round(value)
Math.trunc(value)
这个是总结它们之间差异的表格:
| Math.floor | Math.ceil | Math.round | Math.trunc | |
|---|---|---|---|---|
| 3.1 | 3.1 | 3.1 | 3.1 | |
| 3.1 | 3 | 4 | 3 | 3 |
| 3.6 | 3 | 4 | 4 | 3 |
| -1.1 | -2 | -1 | -1 | -1 |
| -1.6 | -2 | -1 | -2 | -1 |
toFixed()
方法可把 Number 四舍五入为指定小数位数的数字。
//用法
let num = 1.1111;
num.toFixed(1)
注意 : 返回的是一个字符
isNaN() 与 isFinite()
- isNaN(value)
将其参数转换为数字,然后测试它是否为 NaN: - isFinite(value)
将其参数转换为数字,如果是常规数字,则返回 true,而不是 NaN/Infinity/-Infinity:
//用法
isNaN(NaN);// true
isNaN("str");// true
isFinite(1); // true
isFinite("str"); // false,因为是一个特殊的值:NaN
isFinite(Infinity); // false,因为是一个特殊的值:Infinity
注意,在所有数字函数中,包括 isFinite,空字符串或仅有空格的字符串均被视为 0。
parseInt() 与 parseFloat()
从字符串中“读取”数字,直到无法读取为止。如果发生 error,则返回收集到的数字。
函数 parseInt 返回一个整数,
函数 parseFloat 返回一个浮点数:
parseInt(string, radix); 可以传两个参数
第一个参数为数字(必填),第二个参数为表示要解析的数字的基数(选填)。该值介于 2 ~ 36 之间。
//用法
parseInt('10px'); // 10
parseFloat('1.2em'); // 1.2
parseInt('44.4'); // 44,只返回整数部分
parseFloat('1.2.3.4'); // 1.2,在第二个点出停止了读取
parseInt('a1'); // NaN,第一个符号停止了读取
parseInt("1f",16);// 31
注意:如果字符串的第一个字符不能被转换为数字,那么parseInt() 与 parseFloat() 会返回 NaN。
其他数学函数
random()
返回一个从 0 到 1 的随机数(不包括 1)
//用法
Math.random();
Math.max() 与 Math.min()
从任意数量的参数中返回最大/最小值
//用法
Math.max(1, 3, 5, -1); // 5
Math.min(1, 4, 6 ,7 ); // 1
Math.pow()
返回 参数一 的给定 参数二 次幂
Math.pow()必须有两个参数,第一个参数是 底数 (必须是数字) 第二个参数是 幂数 (必须是数字)
//用法
Math.pow(2, 3); // 2**3=8
总结
Math 对象用于执行数学任务。
使用 Math 的属性和方法的语法:
//用法
var pi_value=Math.PI;
var sqrt_value=Math.sqrt(15);
注意:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。
| 属性 | 描述 |
|---|---|
| E | 返回算术常量 e,即自然对数的底数(约等于2.718)。 |
| LN2 | 返回 2 的自然对数(约等于0.693)。 |
| LN10 | 返回 10 的自然对数(约等于2.302)。 |
| LOG2E | 返回以 2 为底的 e 的对数(约等于 1.414)。 |
| LOG10E | 返回以 10 为底的 e 的对数(约等于0.434)。 |
| PI | 返回圆周率(约等于3.14159)。 |
| SQRT1_2 | 返回返回 2 的平方根的倒数(约等于 0.707)。 |
| SQRT2 返回 | 2 的平方根(约等于 1.414)。 |
| 方法 | 描述 |
|---|---|
| abs(x) | 返回数的绝对值。 |
| acos(x) | 返回数的反余弦值。 |
| asin(x) | 返回数的反正弦值。 |
| atan(x) | 以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。 |
| atan2(y,x) | 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。 |
| ceil(x) | 对数进行上舍入。 |
| cos(x) | 返回数的余弦。 |
| exp(x) | 返回 e 的指数。 |
| floor(x) | 对数进行下舍入。 |
| log(x) | 返回数的自然对数(底为e)。 |
| max(x,y) | 返回 x 和 y 中的最高值。 |
| min(x,y) | 返回 x 和 y 中的最低值。 |
| pow(x,y) | 返回 x 的 y 次幂。 |
| random() | 返回 0 ~ 1 之间的随机数。 |
| round(x) | 把数四舍五入为最接近的整数。 |
| sin(x) | 返回数的正弦。 |
| sqrt(x) | 返回数的平方根。 |
| tan(x) | 返回角的正切。 |
| toSource() | 返回该对象的源代码。 |
| valueOf() | 返回 Math 对象的原始值。 |
本文参考:
https://www.w3school.com.cn/
https://javascript.info/
JavaScript基础 数字类型的更多相关文章
- python基础-数字类型及内置方法
--数字类型及内置方法 整型-int 用途:多用于年龄.电话.QQ号等变量 定义方法 age = 18 # age = int(18) 常用方式:多用于数学计算 # int(x)将x转换成整数,是向下 ...
- EasyUI datagird 排序 按数字类型的问题
easyui datagird 默认显示的数据都是字符, 对要数字列进行排序规则,需要自定义排序规则如果按字符排序 27竟然小于4 这不是我们想要的.解决方案 <table id='grid'c ...
- 【你不知道的javaScript 中卷 笔记1】javaScript中的类型与值
一.类型与值 1.0 javaScript 七种内置类型: 空值(null) 未定义(undefined) 布尔值( boolean) 数字(number) 字符串(string) 对象(object ...
- JavaScript基础系列(变量与类型)
以下内容将JavaScript简称为JS 打开本文时不管你是零基础的初学者还是其他语言的老兵,我都想说程序语言的基础支撑起了整个网络世界,不把这些基础学透之后稍复杂的内容会让你寸步难行. 现在先给编程 ...
- 你真的懂JavaScript基础类型吗
夯实Javascript基础. 基本类型有六种: null,undefined,boolean,number,string,symbol. 基本类型的值是保存在栈内存中的简单数据段 基础类型特性 基础 ...
- JavaScript基础回顾一(类型、值和变量)
请看代码并思考输出结果 var scope = 'global'; function f(){ console.log(scope); var scope = 'local'; console.log ...
- 前端知识体系:JavaScript基础-变量和类型
前端工程师自检清单 1. JavaScript规定了几种语言类型 2. JavaScript对象的底层数据结构是什么 3. Symbol类型在实际开发中的应用.可手动实现一个简单的 Symbo 4. ...
- JavaScript 基础类型,数据类型
1.基础类型:undefined,null,Boolean,Number,String,Symbol Undefined类型:一个没有被赋值的变量会有个默认值undefined; Null类型:nul ...
- javaScript中Number数字类型方法入门
前言 Number和Math都属于JavaScript中的内置对象,Number数字类型作为基础数据类型,我们在开发过程中会经常用到,包括数字精度的格式化,还有字符串转换成数字等操作. Number数 ...
随机推荐
- Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性
什么是对象和类 https://www.cnblogs.com/poloyy/p/15178423.html 什么是 Python 类.类对象.实例对象 https://www.cnblogs.com ...
- Git修改历史commit的author信息
前言 "嘀嗒嘀嗒",抬头看向墙上的钟表,此时已是凌晨1点.小明终于把Go语言圣经第二章的笔记写完,保存commit,提交,然后睡觉. 额,等等,不对,小明发现他用的是公司的git账 ...
- 目录-理解ASP.NET Core
<理解ASP.NET Core>基于.NET5进行整理,旨在帮助大家能够对ASP.NET Core框架有一个清晰的认识. 目录 [01] Startup [02] Middleware [ ...
- 国内Git官网下载windows版本慢的问题,推荐一个国内镜像
话不多说了,给你们镜像地址: https://npm.taobao.org/mirrors/git-for-windows/ 不用谢.点右边打赏个一毛钱,告诉我你来过 !_!
- Ubuntu 16.04 NVidia显卡 输入密码后 重复出现登录界面
问题根源:显卡驱动 解决办法: CTRL+ALT+F1 # 切换到命令行 sudo service lightdm stop # 关闭桌面显示管理器 sudo apt-get remove --pu ...
- Panel添加边框颜色和边框粗细调整
Panel控件添加边框颜色 C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法 - JiYF - 博客园 (cnblogs.com) 1.新建一个用户控件的项目,如下: 2.添加一个P ...
- Git使用教程四
拉取线上仓库 :git pull 提醒: 在每天工作的第一件事就是先git pull拉取线上最新·的版本: 每天下班前要做的是git push,将本地代码提交到线上仓库. 有兴趣可以关注一下微信公众号
- 并发编程之:AQS源码解析
大家好,我是小黑,一个在互联网苟且偷生的农民工. 在Java并发编程中,经常会用到锁,除了Synchronized这个JDK关键字以外,还有Lock接口下面的各种锁实现,如重入锁ReentrantLo ...
- Intel® QAT加速卡之Linux上编程说明
QAT Software for Linux 1. Introduction 该程序员指南提供了有关软件体系结构和使用指南的信息. 相关的英特尔QAT软件库文档中记录了有关使用英特尔QuickAssi ...
- JAVA安全基础之反射
JAVA安全基础之反射 在JAVA安全中,反射是一个经常使用的技术,所以熟悉使用反射是非常必要的.下面就简单的讲下JAVA的反射的用法 什么是反射 每个类都有对应的Class类对象,该Class类对象 ...