code: function has(obj, val) {
    val = arrayify(val);
    var len = val.length;
  
    if (isObject(obj)) {
      for (var key in obj) {
        if (val.indexOf(key) > -1) {
          return true;
        }
      }
  
      var keys = nativeKeys(obj);
      return has(keys, val);
    }
  
    if (Array.isArray(obj)) {
      var arr = obj;
      while (len--) {
        if (arr.indexOf(val[len]) > -1) {
          return true;
        }
      }
      return false;
    }
  
    throw new TypeError('expected an array or object.');
  }
docs: Returns true if an array has any of the given elements, or an
  object has any of the given keys.
  
  ```js
  has(['a', 'b', 'c'], 'c');
  //=> true
  
  has(['a', 'b', 'c'], ['c', 'z']);
  //=> true
  
  has({a: 'b', c: 'd'}, ['c', 'z']);
  //=> true
  ```
  @param {Object} `obj`
  @param {String|Array} `val`
  @return {Boolean}