code: function isHostType(object, property) {
      var type = object != null ? typeof object[property] : 'number';
      return !/^(?:boolean|number|string|undefined)$/.test(type) &&
        (type == 'object' ? !!object[property] : true);
    }
docs: Host objects can return type values that are different from their actual
  data type. The objects we are concerned with usually return non-primitive
  types of "object", "function", or "unknown".
  
  @private
  @param {*} object The owner of the property.
  @param {string} property The property to check.
  @returns {boolean} Returns `true` if the property value is a non-primitive, else `false`.