function dsnansumors( N, x, strideX, offsetX ) {
	var sum;
	var ix;
	var v;
	var i;

	if ( N <= 0 ) {
		return 0.0;
	}
	ix = offsetX;
	if ( strideX === 0 ) {
		if ( isnan( x[ ix ] ) ) {
			return 0.0;
		}
		return N * x[ ix ];
	}
	// Find the first non-NaN element...
	for ( i = 0; i < N; i++ ) {
		v = x[ ix ];
		if ( isnan( v ) === false ) {
			break;
		}
		ix += strideX;
	}
	if ( i === N ) {
		return 0.0;
	}
	sum = v;
	ix += strideX;
	i += 1;
	for ( ; i < N; i++ ) {
		if ( isnan( x[ ix ] ) === false ) {
			sum += x[ ix ];
		}
		ix += strideX;
	}
	return sum;
}
Computes the sum of single-precision floating-point strided array elements, ignoring `NaN` values, using ordinary recursive summation with extended accumulation, and returning an extended precision result.

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

@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 = dsnansumors( 5, x, 2, 1 );
// returns 5.0