Вот что я пробовал до сих пор. Я хочу получить 12.34
:
BigInt('12340000000000000000') / BigInt('1000000000000000000')
12n
Number(BigInt('12340000000000000000') / BigInt('1000000000000000000'))
12
FWIW, когда я использую библиотеку JSBI, она работает так, как мне хотелось бы:
JSBI.BigInt('12340000000000000000') / JSBI.BigInt('1000000000000000000');
12.34
Разве это не возможно изначально?
Number(BigInt('x')) / Number(BigInt('y'))
, то есть простого нативного деления двух нативных чисел? - person Pointy   schedule 28.01.2019BigInt
, посколькуBigDecimal
связано сBigInteger
в Java. - person Pointy   schedule 28.01.2019Number(BigInt('12340000000000000001'))
не будет работать, потому что весь смысл использования BigInt заключается в сохранении полной точности, которую вы потеряете, если просто преобразуете ее в число. Результатом этого будет12340000000000000000
. - person robmisio   schedule 28.01.2019but weird that the lib that is officially recommended as the fallback could do it
Это потому, что вы тогда просто делаетеNumber / Number
,.. например. Вы можете сделать этот расчет без использования JSBI. В чистом JS ->12340000000000000000 / 1000000000000000000 = 12.34
- person Keith   schedule 28.01.2019JSBI.divide('12340000000000000000', '1000000000000000000')
- person Keith   schedule 28.01.2019