JSFiddle - React, Tailwind, and code Playground

by Graham Fairweather

JavaScript

var array1 = [-Infinity, -1, 0, 1, 2, NaN, 4, 5, Infinity],
    json = JSON.stringify(array1, function (key, value) {
        if (value !== value) {
            return 'NaN';
        }
        
        if (value === Infinity) {
            return 'Infinity';
        }
        
        if (value === -Infinity) {
            return '-Infinity';
        }
        
        return value;
    }),
    array2 = JSON.parse(json, function (key, value) {
        if (value === 'NaN') {
            return NaN;
        }
        
        if (value === 'Infinity') {
            return Infinity;
        }
        
        if (value === '-Infinity') {
            return -Infinity;
        }
        
        return value;
    });

console.log(json);
console.log(array2);