Irgendeine Idee, warum JSON NaN und +/- Infinity weggelassen hat? Es versetzt Javascript in die seltsame Situation, in der Objekte, die sonst serialisierbar wären, dies nicht tun, wenn sie NaN- oder +/- unendlich Werte enthalten.
Sieht so aus, als wäre dies in Stein gemeißelt: siehe RFC4627 und ECMA-262 (Abschnitt 24.5.2, JSON.stringify, ANMERKUNG 4, Seite 683 des PDFs ECMA-262 bei der letzten Bearbeitung):
Endliche Zahlen werden wie durch Aufrufen stringifiziert
ToString(number)
. NaN und Infinity werden unabhängig vom Vorzeichen als String dargestelltnull
.