dist/crisp-base.js
function xAddArray() {
        var i = 0,
            m = arguments.length,
            a;

        for (; i < m; i += 1) {
            a = arguments[i];

            if ($$.type.call(a, 'Array')) {
                xAddArray.apply(this, a);
            } else if (a !== undefined) {
                this.push(a);
            }
        }

        return this;
    }
function xAddArray() {
        var i = 0,
            m = arguments.length,
            a;

        for (; i < m; i += 1) {
            a = arguments[i];

            if ($$.type.call(a, 'Array')) {
                xAddArray.apply(this, a);
            } else if (a !== undefined) {
                this.push(a);
            }
        }

        return this;
    }
var utilTack = $$.utilTack; 
add one or more items/arrays for concat in Array.
empty Arrays and undefined items are ignored

@function external:Array.prototype.xAdd

@param {...AnyItem} item one or more of args

@this module:EventJS
@return {module:EventJS}

@example
// standard
[].xAdd('a'); // ['a']
[].xAdd( 'a', 'b' ); // ['a','b']
[].xAdd([ 'a', 'b' ]); // ['a','b']
[].xAdd(['a'], ['b']); // ['a','b']

// empty items
[].xAdd(); // []
[].xAdd([]); // []
[].xAdd(['a'], []); // ['a']

// undefined items
[].xAdd( undefined ); // []
[].xAdd( undefined, 'b' ); // ['b']
[].xAdd([ 'a', undefined ]); // ['a']
[].xAdd(['a'], [ undefined ]); // ['a']