In JavaScript, il valore NaN può essere rappresentato internamente da una vasta gamma di doppi a 64 bit. In particolare, qualsiasi doppio con la seguente rappresentazione bit a bit:
x111 1111 1111 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
Viene interpretato come NaN. La mia domanda è: supponiamo di aver lanciato due uint a 32 bit su un numero JS usando ArrayBuffers, di passarlo in giro, quindi di ricondurlo a due uint a 32 bit. I bit recuperati saranno gli stessi dell'originale o i motori JS possono cambiare i bit di una NaN a piacimento? In altre parole, i numeri JS possono essere utilizzati per memorizzare in modalità perdita a 64 bit?