关于json和64位表示

转自:https://segmentfault.com/a/1190000002608050

1.介绍

JSON本身并没有对整数的大小有硬性限制,而是依赖于使用JSON的库以及相应的编程语言的数据类型。JSON(JavaScript Object Notation)是一种轻量级数据交换格式,它独立于语言和平台。

  • nodejs中使用JavaScript语言,JavaScript能表示的最大值是2^53-1。
  • Java中最大是Int64类型,超出要额外用bigint表示,最大值是2^63-1;
  • C++中有uint64类型,C++服务之间通信,自然可以解析。

2.为什么JavaScript支持范围有限?

JS 中所有的数字类型,实际存储都是通过 8 字节 double 浮点型 表示的。

  • 1 位符号位
  • 11 位指数位 (关键是有这个占位了)
  • 52 位尾数位

 

posted @ 2024-01-30 01:35  lypbendlf  阅读(30)  评论(0编辑  收藏  举报