code: function frexp( x ) {
  	var high;
  	var exp;
  	var w;
  	if (
  		x === 0 ||    // handles -0
  		x !== x ||
  		x === pinf ||
  		x === ninf
  	) {
  		return [ x, 0 ];
  	}
  	// If `x` is subnormal, normalize it...
  	x = normalize( x );
  
  	// Extract the exponent from `x` and add the normalization exponent:
  	exp = floatExp( x[0] ) + x[ 1 ] + 1;
  
  	// Break `x` into two unsigned 32-bit integers (higher and lower order words):
  	w = toWords( x[ 0 ] );
  	high = w[ 0 ];
  
  	// Clear the exponent bits within the higher order word:
  	high &= CLEAR_EXP_MASK;
  
  	// Set the exponent bits within the higher order word to BIAS-1 (1023-1=1022):
  	high |= SET_EXP_MASK;
  
  	// Create a new floating-point number:
  	x = fromWords( high, w[ 1 ] );
  
  	return [ x, exp ];
  }
docs: FREXP // 
  FUNCTION: frexp( x )
  Splits a double-precision floating-point number into a normalized fraction and an integer power of two.
  
  @param {Number} x - input value
  @returns {Number[]} two element array containing a normalized fraction and an exponent