美文网首页
Javascript数值

Javascript数值

作者: 败于化纤 | 来源:发表于2022-11-28 17:56 被阅读0次

JavaScript 要数值类型 Number 用于表示整数和近似实数。

JavaScript 使用 IEEE 754 标准 定义的 64 位浮点格式表示数值,这意味着 JavaScript 可以表示:

  • 最大整数是1.797 693 134 862 315 10
  • 最小整数是± 5 X 10 324

整数字字面量

  • JavaScript 程序中,基数为 10 的整数可以直接写成数字序列。
  • JavaScript 也支持十六进制(基数是 16 的)值。十六进制字面量以 开头,后跟一个十六进制数字字符串。十六进制数字是数字。到
    和字母 (或A )到 f(或 F), a到f表示 10到 15 。
  • ES6 及之后的版本中, 可以通过 进制(基数为 )或 进制(基数为 )表示整
    数,分别使用前缀 。b 00 (或 08 00 ):
0b10101 // => 21: (1*16 +日* + 吃+ l*l) 
00377 I I => 255: (3*64 + 7*8 + 叫)

浮点数字面量

  • 浮点字面量可以包含小数点,它们对实数使用传统语毯 实数值由数值的整数部分数点和数值的小数部分组成。
  • 浮点字面量也可以使用指数记数怯表示,即实数值后面可以跟 (或 ),跟一个可边的加号或减号,再跟 个整数指数 这种记数居表示的是实数值乘以 的指数次幕。更简洁的语陆形式为:
[digits][. digits][ (EI e)[ (+I - ) ]digits ]

例如:

3.14 
2345.6789 
. 333333333333333333 
6.02e23 II 6.@2 x 23 
1.4738223E- 32 II 1.4 822] X 1@ -32

数值字面量中的分隔符

  • let bi.Hi.on = _00。一000_000// 下划线作为千分位分 隔符
  • let bytes = 0x89_AB_CD_EF; // 作为 字节分隔符
  • let bi.ts = 0b0001 1101 0111; // 作为 字节分隔符
  • let act i.o = 0.123_456_789; //也可以用在小数部分

JavaScript 中的算术

  • JavaScript 程序使用语言提供的算术操作符来操作数值,包括表示加栓的 、表示减怯的-、表示乘陆的气表示除法的 表示取模(除陆后的余数) ES2016 增加了取幕的**。
  • Ja aSc ip 还通过 Math 对象的属性提供了 函数和常量,以支持 复杂的数学计算:
    Math . pow( 2, 53) // => 9001199254740992 : 2的53次方
    Math ound(.6)//=>1.0 舍入到最接近的整数
    Math .ceH( . 6) //=>1. 0上舍入 个整数
    th .floor(. 6) // => 舍入到一个整数
    Math. abs( - 5) //=> 绝对值
    Mat h.l'lax( x,y,z ) //返回最大的参数
    Mat h.l'li.n(x, y , z) //返回最小的参数
    ath random() //伪随机数 x,其中0= <x< 1. 0
    ath .PI//圆周率
    Math .E //e:自然对数 的底数
    ath .sqrt(3)//=> 3“ 0 . 5 : 的平方根
    Math. pow( 3, 1/ 3) // => 3**( 1/3) 的立方根
    Math. si.n( 0) //三角函数 Math.cos ath.ata等
    Math.log(10) //10 的自然对数
    ath .log( 100 )/ ath .LN10//10 为底 00 的对数
    Math .log(S12)/ Math. LN2 //以2为底 的对数
    Math .exp( 3) // Math.E 的立方
ES6 Math 象上又定义了 批函数

Math .cbrt( 27) //=>3 立方根
Math. hypot( 3, 4) //=>5 有参 方和 的平
Math. log10( 100) //=>2以10 为底的对数
Mat h. log2( 1024) // => 10 以2为底的对数
Math. loglp(x) // (l+ x)的自 然对数 确到 小的x
Math. expl'll(x) // Math,exp(x)-1 Math.loglp () 的逆运算
Math.si.gn( x) //对 < 或==或>0的参数返回
Ma th . i.1'1ul( 2, 3) // => 优化的 位整 乘法
Math . clz32( 0xf) // => 28: 32 整数 中前 位数
Math trunc( 3.9) //=> ο3 剪掉 数部 得到整数
Math. fround( x) //舍入到最接近的 32 浮点数
Math .si.nh(x) //双曲 弦,还有 ath.cosh () ath. nh()
Math . asi.nh( x) // 线反 还有 Math. acosh () Mat h. atanh()

  • JavaScript 中的 遇到上溢出、 或被零除 发生错误。在 值操作的结果超过最大可表示数值时(上溢出), 结果是一个特殊的无穷值 Infinity 。类似地,当某个负数的绝对值超过了最大可表示负数的 对值时,结果是负 穷值 Infi.ni.ty这两个无穷值的行为眼我 的预期 何数加、减、乘、除无穷值结果还是无穷值只是 可能相反。

二进制浮点数与舍入错误

实数有无限多个,但 JavaScript 的浮点格式只能表示其中有限个(确切地说,是18 437 736 874 454 810 627 个)。这意味着在通过 JavaScript 操作实数时,数值表示的经常是实际数值的近似值。

JavaScript (以及所有现代编程语 )使用的 IEEE-754 浮点表示法是 进制表示法,这种表示怯可以精确地表示如 1/1024 等分数。然而,我们最常用的分数(特别是在进行财务计算时)是十进制分数: 1/10 100 等等。 进制浮点表示法无法精
确表示哪怕 0. 这么简单的数。

  • 如果浮点近似值对你的程 是个问题,可以考虑使用等量整数。例如,计算 钱数
    有关的数值时可以使用整数形式的美分,而不是零点几美元。

通过 Big Int 表示任意精度整数

ES2020 JavaScript 义了 种新的数值类型 Biglnt 2020 初, Chrome irefoxEdge Node 都实现了这个类型, Safari 也在实现中。顾名思义, Biglnt 这种数值类型的值是整数。之所以增加这个类型, 要是为了表示 64 位整数,这对于兼容很多其他语言和API 是必需的。但 Biglnt 值可能有数千甚 数百万个数字,可以满足对大数的需求(不过, Biglnt 的实现并不适合加密,因为它们没有考虑防止时序攻击)。
  • 标准的 +、 -、 %和**操作符可以用于 Biglnt ,但不能 昆用 Biglnt 操作数和
    常规数值操作数。
  • 如果一种数值类型比另一种更通用,则比较容易定义民合操作数的计算井返回更通用的类型。

日期和时间

Date:

JavaScript 为表示和操作与日期及时间相关的数据而定义了简单的 Date JavaScript的Date 是对象,但也有数值表示形式,即自 1970 日起至今 毫秒数,也叫时间戳:
let ti.l'lestal'lp = Date . now(); //当前时间的时间戳(数值)

let now = new Date(); //当前时间的日期对象
let 1'15 = now.getTi.l'le(); //转换为毫秒时间戳
let i.so = now.toISOSt i.ng(); II 转换为标准格式的字符串

相关文章

  • JavaScript数值

    Math.abs(x) 获取x的绝对值Math.round(x) 获取x四舍五入Math.ceil(x) 向上取整...

  • javascript数值范围问题(Infinity)

    javascript数值范围问题(Infinity) 由于内存限制,ECMAScript数值具有范围,最小数值Nu...

  • JavaScript 数值转换

    JavaScript 数值转换 JavaScript 字符串转换数字方法主要有四种:强制类型转换、转换函数、利用J...

  • Javascript 基础:数值

    常见的计算方法: Math的其他方法: 常用的转换方法: 案例:如何获取一个大于等于0且小于等于9的随机整数?

  • javascript数值转换

    Javascript数值转换一共有三种方法 Number(),通用 parseInt(),转换字符串对象 pars...

  • JavaScript 数值范围

    ** ECMAScript ** 能够表示的最小数值保存在 ** Number.MIN_VALUE ** 中 ——...

  • JavaScript语言基础(一)

    JavaScript数据类型-数值型(number):最基本的数据类型。不区分整形数值和浮点数值。JavaScir...

  • javascript-数据类型

    javascript数据类型的一些基本知识 NaN,即非数值(Not a Number)是一个特殊的数值,这个数值...

  • 创建对象有哪些方式

    JavaScript 中的所有事物都是对象:字符串、数值、数组、函数...... 此外,JavaScript允许自...

  • javascript对象

    javascript中的所有事物都是对象 : 字符串 数值 数组 函数.... 此外, javascript允许自...

网友评论

      本文标题:Javascript数值

      本文链接:https://www.haomeiwen.com/subject/zcblfdtx.html