code: function contains(collection, target, fromIndex) {
        var index = -1,
            length = collection ? collection.length : 0,
            result = false;
  
        fromIndex = (fromIndex < 0 ? nativeMax(0, length + fromIndex) : fromIndex) || 0;
        if (typeof length == 'number') {
          result = (isString(collection)
            ? collection.indexOf(target, fromIndex)
            : indexOf(collection, target, fromIndex)
          ) > -1;
        } else {
          forOwn(collection, function(value) {
            if (++index >= fromIndex) {
              return !(result = value === target);
            }
          });
        }
        return result;
      }
docs: Checks if a given `target` element is present in a `collection` using strict
  equality for comparisons, i.e. `===`. If `fromIndex` is negative, it is used
  as the offset from the end of the collection.
  
  @static
  @memberOf _
  @alias include
  @category Collections
  @param {Array|Object|String} collection The collection to iterate over.
  @param {Mixed} target The value to check for.
  @param {Number} [fromIndex=0] The index to search from.
  @returns {Boolean} Returns `true` if the `target` element is found, else `false`.
  @example
  
  _.contains([1, 2, 3], 1);
  // => true
  
  _.contains([1, 2, 3], 1, 2);
  // => false
  
  _.contains({ 'name': 'moe', 'age': 40 }, 'moe');
  // => true
  
  _.contains('curly', 'ur');
  // => true