In JavaScript kann der NaN-Wert intern durch einen weiten Bereich von 64-Bit-Doubles dargestellt werden. Insbesondere jedes Double mit der folgenden bitweisen Darstellung:
x111 1111 1111 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
Wird als NaN interpretiert. Meine Frage lautet: Angenommen, ich wandle zwei 32-Bit-Uint mit ArrayBuffers in eine JS-Nummer um, gebe sie weiter und wandle sie dann wieder in zwei 32-Bit-Uint um. Sind die wiederhergestellten Bits dieselben wie das Original oder dürfen JS-Engines die Bits eines NaN nach Belieben ändern? Mit anderen Worten, können JS-Nummern verwendet werden, um verlustbehaftete 64-Bit-Daten zu speichern?