function each(o, f) {
            if(!o) return o;
            if ( isArray(o) || isArrayLike(o) ) {
                for(let i=0,l=o[LENGTH]>>>0; i<l; i++) if(hop.call(o, i)) {
                    let s = o[i];
                    if(f.call(s, i, s, o) === FALSE) return i;
                }
            }
            else {
                for(let i in o) if(hop.call(o, i)) {
                    let s = o[i];
                    if(f.call(s, i, s, o) === FALSE) return i;
                }
            }
            return o;
        }
function each(o, f) {
            if(!o) return o;
            if ( isArray(o) || isArrayLike(o) ) {
                for(let i=0,l=o[LENGTH]>>>0; i<l; i++) if(hop.call(o, i)) {
                    let s = o[i];
                    if(f.call(s, i, s, o) === FALSE) return i;
                }
            }
            else {
                for(let i in o) if(hop.call(o, i)) {
                    let s = o[i];
                    if(f.call(s, i, s, o) === FALSE) return i;
                }
            }
            return o;
        }
function each ( o , f ) { if ( ! o ) return o ; if ( isArray ( o ) || isArrayLike ( o ) ) { for ( let i = 0 , l = o [ LENGTH ] >>> 0 ; i < l ; i ++ ) if ( hop . call ( o , i ) ) { let s = o [ i ] ; if ( f . call ( s , i , s , o ) === FALSE ) return i ; } } else { for ( let i in o ) if ( hop . call ( o , i ) ) { let s = o [ i ] ; if ( f . call ( s , i , s , o ) === FALSE ) return i ; } } return o ; }
var isString = function isString(obj) { return obj instanceof String || type(obj) == 'String'; } ; -------------------------------------------------------------
var isString = function isString ( obj ) { return obj instanceof String || type ( obj ) == String ; } ; -------------------------------------------------------------