我在字符串转换方面遇到了问题:
像这样使用parseInt(string[,radix])
时:
BigInt(parseInt('something',36))
它输出:80920602611116n
。像这样输入不同:
BigInt(parseInt('somethink',36))
它输出:80920602611120n
,这当然是其他内容。
但是,如果它是一个较长的字符串,则输出数字有时是相同的:
BigInt(parseInt('thisisactuallyadifferentsomething',36))
BigInt(parseInt('thisisactuallyadifferentsomethink',36))
这将为两者输出1867697451648055638757226289961051507749359223570432n
,尽管它们是不同的。
我知道整数的安全表示形式有一个限制,这就是为什么我使用BigInt的原因,没有限制。
在使用BigInt表示这些字符串时,我必须能够区分此大小的字符串。