function snanrange( N, x, strideX, offsetX ) {
	var max;
	var min;
	var ix;
	var v;
	var i;

	if ( N <= 0 ) {
		return NaN;
	}
	if ( N === 1 || strideX === 0 ) {
		if ( isnanf( x[ offsetX ] ) ) {
			return x[ offsetX ];
		}
		return 0.0;
	}
	ix = offsetX;
	for ( i = 0; i < N; i++ ) {
		v = x[ ix ];
		if ( v === v ) {
			break;
		}
		ix += strideX;
	}
	if ( i === N ) {
		return NaN;
	}
	min = v;
	max = min;
	i += 1;
	for ( i; i < N; i++ ) {
		ix += strideX;
		v = x[ ix ];
		if ( isnanf( v ) ) {
			continue;
		}
		if ( v < min ) {
			min = v;
		} else if ( v > max ) {
			max = v;
		}
	}
	return float64ToFloat32( max - min );
}
Computes the range of a single-precision floating-point strided array, ignoring `NaN` values.

@param {PositiveInteger} N - number of indexed elements
@param {Float32Array} x - input array
@param {integer} strideX - stride length
@param {NonNegativeInteger} offsetX - starting index
@returns {number} range

@example
var Float32Array = require( '@stdlib/array/float32' );

var x = new Float32Array( [ 2.0, 1.0, 2.0, -2.0, -2.0, 2.0, 3.0, 4.0, NaN, NaN ] );

var v = snanrange( 5, x, 2, 1 );
// returns 6.0