乐趣区

JavaScript 精粹:Number 与 Math

这是 JavaScript 精粹的系列篇,涵盖了 JavaScript 中最常用和最重要的方法,以及其它一些基础知识。在这篇文章中,我们将讨论 Number 和 Math
前置知识
建议大家了解类型,只需要一点数学知识。
JavaScript Essentials: Types & Data Structures
JavaScript 中的数字基础

JavaScript 只有一种数字类型,如 5 和 5.12 是相同的类型。
JS 使用“双精度 64 位格式 IEEE 754”标准

这是什么意思?所有 JavaScript 数字都存储为双浮点数。JS 会欺骗你,让你认为 var x = 1 是一个整数,但实际上它是一个浮点数并且等于 1.0。
如果你这方面感兴趣,以下一些链接供你参考:

ECMAScript® 2018 Language Specification
Here is what you need to know about JavaScript’s Number type

本文的重点是 Number 对象的方法。
https://medium.com/dailyjs/ja…
数字创建和基本的代码

重要指南

所有数字都是浮点数
所有的数字都是相同的类型,’number’
JS 与任何其他语言一样,受限于它可以表示的数字大小以及它的准确程度。

常用的方法
“安全”的数字
一个“安全”的数字是一个值保证为你所说的值的数字。例如,如果试图在代码中使用 900719925474099164,它就会变成 900719925474099200,这是因为它超出了安全数字范围。
我们怎么知道安全数字的范围是多少?

如何确定一个数字是否是整数?

如何更改小数位数?

转换成指数形式
也被称为科学记数法。

全局 Number 方法 与 Number.method 比较
你可能已经注意到有像 parseInt 这样的全局函数,但是这里只用 Number.parseInt()
这是因为 JS 试图摆脱全局函数而使用模块。一些新的模块方法被更新,而旧的全局方法没有更新。比如 isNan() 不同于 Number.isNan()。
使用大数字
警告:下面提到的 vanilla JS 方法目前在这个的时间段内不可用。(可以在 Chrome 控制台中尝试)在此处 查看提案。

在 BigInt 可用之前,请使用库 MikeMcl/bignumber.js。
转换为另一个数字系统

数字使用字符串中的方法
你可能已经尝试在控制台或任何地方上数字使用字符串的方法如 23.toString(2) // syntax error 这是因为如前面“数字创建基础”中提到的 23.,0 是可选的。
这意味着当你做 23.tostring(2),JS 认为它只是一个数字。它应该足够聪明,知道正在调用一个方法,但是好吧。
解决方案:将数字包在括号中 (23).toString(2) //“10111”或做一些非常奇怪的事 …… 23..toString(2) 但请不要这样做 ????
NaN 是 Number 类型
NaN 存在于 Number 对象上,但是被定义为某些数学运算的结果,这些运算导致无法将数值量化为数字。或者换句话说,它的命名很差,“无效数字”或类似数字情况会更好。
检查 NaN
NaN 是有毒的,意思是它会把它接触到的任何东西变成 请输入代码 NaN。它是唯一不等于它本身的值,我们可以利用它来做一些像 x !== x 的事情,如果它返回 true,那么它就是 NaN。

四舍五入一个数字的方法

指数

生成随机数

Math 方法
在这里只包含了一些 Math 方法,但是有很多方法,请查看文档。我没有把它们全部包括在内,因为它们不言自明,并且只在你处理一个数字很多且重要的项目时才会经常使用。
Math
实践

Convert a Number to a String!
Square Every Digit
Is this a triangle?
Playing with digits
Multiples of 3 or 5

原文:
https://codeburst.io/javascri…
你的点赞是我持续分享好东西的动力,欢迎点赞!
一个笨笨的码农,我的世界只能终身学习!
更多内容请关注公众号《大迁世界》!

退出移动版