whole_func_string: 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;
      }
func_code_string: 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;
      }
func_documentation_string: 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']