Why would js deal with multiple digits?

< H1 > js dynamically creates dom and adds the click method to pass real parameters to the method. One of the parameters is 17 digits, which changes to the method, and the last bit becomes zero < / H1 >.

has been tested many times and found that as long as there are more than 16 characters, the last one will be processed

for example

 46186703425110016
 46186703425110010
dehtml:
<button onclick="sendPaperMail(`46186703425110016`,this)" class="outlined-btn-small outlined-                        btn-blue"></button>
 46186703425110010-sharp-sharp-sharp 

Dec.07,2021

numbers are compiled in JavaScript


or you use strings instead of numeric mode, so you won't eat characters.


js very large integer overflow
because all numbers need to be converted to binary, and the converted binary is then stored in memory using scientific counting, so we know that the length of M determines the range of numbers that can be represented.

M fixed length is 52 bits, plus one omitted bit, the maximum number that can be expressed is 2 ^ 53-1 = 9007199254740991, so the range is-9007199254740991 ~ 9007199254740991
Link description

.
Menu