_.where

where_.where(list, properties) Looks through each value in the list, returning an array of all the values that contain all of the key-value pairs listed in properties. _.where(listOfPlays, {author: "Shakespeare", year: 1611}); => [{title: "Cymbeline", author: "Shakespeare", year: 1611}, {title: "The Tempest", author: "Shakespeare", year: 1611}]

_.value

value_.chain(obj).value() Extracts the value of a wrapped object. _.chain([1, 2, 3]).reverse().value(); => [3, 2, 1]

_.without

without_.without(array, *values) Returns a copy of the array with all instances of the values removed. _.without([1, 2, 1, 0, 3, 1, 4], 0, 1); => [2, 3, 4]

_.zip

zip_.zip(*arrays) Merges together the values of each of the arrays with the values at the corresponding position. Useful when you have separate data sources that are coordinated through matching array indexes. Use with apply to pass in an array of arrays. If you're working with a matrix of nested arrays, this can be used to transpose the matrix. _.zip(['moe', 'larry', 'curly'], [30, 40, 50], [true, false, false]); => [["moe", 30, true], ["larry", 40, false], ["curly", 50, false]]

_.values

values_.values(object) Return all of the values of the object's own properties. _.values({one: 1, two: 2, three: 3}); => [1, 2, 3]

_.wrap

wrap_.wrap(function, wrapper) Wraps the first function inside of the wrapper function, passing it as the first argument. This allows the wrapper to execute code before and after the function runs, adjust the arguments, and execute it conditionally. var hello = function(name) { return "hello: " + name; }; hello = _.wrap(hello, function(func) { return "before, " + func("moe") + ", after"; }); hello(); => 'before, hello: moe, after'

_.unique

uniq_.uniq(array, [isSorted], [iteratee]) Alias: unique Produces a duplicate-free version of the array, using === to test object equality. In particular only the first occurence of each value is kept. If you know in advance that the array is sorted, passing true for isSorted will run a much faster algorithm. If you want to compute unique items based on a transformation, pass an iteratee function. _.uniq([1, 2, 1, 4, 1, 3]); => [1, 2, 4, 3]

_.unescape

unescape_.unescape(string) The opposite of escape, replaces &, <, >, ", ` and ' with their unescaped counterparts. _.unescape('Curly, Larry & Moe'); => "Curly, Larry & Moe"

_.toArray

toArray_.toArray(list) Creates a real Array from the list (anything that can be iterated over). Useful for transmuting the arguments object. (function(){ return _.toArray(arguments).slice(1); })(1, 2, 3, 4); => [2, 3, 4]

_.uniqueId

uniqueId_.uniqueId([prefix]) Generate a globally-unique id for client-side models or DOM elements that need one. If prefix is passed, the id will be appended to it. _.uniqueId('contact_'); => 'contact_104'