function decode(key) {
            var sign = +key.substr(2, 1);
            var exponent = key.substr(3, 2);
            var mantissa = key.substr(5, 11);

            switch (signValues[sign]) {
                case 'negativeInfinity':
                    return -Infinity;
                case 'positiveInfinity':
                    return Infinity;
                case 'bigPositive':
                    return pow32(mantissa, exponent);
                case 'smallPositive':
                    exponent = negate(flipBase32(exponent));
                    return pow32(mantissa, exponent);
                case 'smallNegative':
                    exponent = negate(exponent);
                    mantissa = flipBase32(mantissa);
                    return -pow32(mantissa, exponent);
                case 'bigNegative':
                    exponent = flipBase32(exponent);
                    mantissa = flipBase32(mantissa);
                    return -pow32(mantissa, exponent);
                default:
                    throw new Error('Invalid number.');
            }
        }
// the original JavaScript number values.
the original JavaScript number values.
the original JavaScript number values .
function decode(key) {
            var sign = +key.substr(2, 1);
            var exponent = key.substr(3, 2);
            var mantissa = key.substr(5, 11);
            switch (signValues[sign]) {
                case 'negativeInfinity':
                    return -Infinity;
                case 'positiveInfinity':
                    return Infinity;
                case 'bigPositive':
                    return pow32(mantissa, exponent);
                case 'smallPositive':
                    exponent = negate(flipBase32(exponent));
                    return pow32(mantissa, exponent);
                case 'smallNegative':
                    exponent = negate(exponent);
                    mantissa = flipBase32(mantissa);
                    return -pow32(mantissa, exponent);
                case 'bigNegative':
                    exponent = flipBase32(exponent);
                    mantissa = flipBase32(mantissa);
                    return -pow32(mantissa, exponent);
                default:
                    throw new Error('Invalid number.');
            }
        }
function decode ( key ) { var sign = + key . substr ( 2 , 1 ) ; var exponent = key . substr ( 3 , 2 ) ; var mantissa = key . substr ( 5 , 11 ) ; switch ( signValues [ sign ] ) { case 'negativeInfinity' : return - Infinity ; case 'positiveInfinity' : return Infinity ; case 'bigPositive' : return pow32 ( mantissa , exponent ) ; case 'smallPositive' : exponent = negate ( flipBase32 ( exponent ) ) ; return pow32 ( mantissa , exponent ) ; case 'smallNegative' : exponent = negate ( exponent ) ; mantissa = flipBase32 ( mantissa ) ; return - pow32 ( mantissa , exponent ) ; case 'bigNegative' : exponent = flipBase32 ( exponent ) ; mantissa = flipBase32 ( mantissa ) ; return - pow32 ( mantissa , exponent ) ; default : throw new Error ( 'Invalid number.' ) ; } }
the original JavaScript number values.
the original JavaScript number values .