_.take

first_.first(array, [n]) Alias: head, take Returns the first element of an array. Passing n will return the first n elements of the array. _.first([5, 4, 3, 2, 1]); => 5

_.findLastIndex

findLastIndex_.findLastIndex(array, predicate, [context]) Like _.findIndex but iterates the array in reverse, returning the index closest to the end where the predicate truth test passes. var users = [{'id': 1, 'name': 'Bob', 'last': 'Brown'}, {'id': 2, 'name': 'Ted', 'last': 'White'}, {'id': 3, 'name': 'Frank', 'last': 'James'}, {'id': 4, 'name': 'Ted', 'last': 'Jones'}]; _.findLastIndex(users, { name: 'Ted' }); => 3

_.flatten

flatten_.flatten(array, [shallow]) Flattens a nested array (the nesting can be to any depth). If you pass shallow, the array will only be flattened a single level. _.flatten([1, [2], [3, [[4]]]]); => [1, 2, 3, 4]; _.flatten([1, [2], [3, [[4]]]], true); => [1, 2, 3, [[4]]];

_.findKey

findKey_.findKey(object, predicate, [context]) Similar to _.findIndex but for keys in objects. Returns the key where the predicate truth test passes or undefined.

_.select

filter_.filter(list, predicate, [context]) Alias: select Looks through each value in the list, returning an array of all the values that pass a truth test (predicate). var evens = _.filter([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); => [2, 4, 6]

_.extend

extend_.extend(destination, *sources) Copy all of the properties in the source objects over to the destination object, and return the destination object. It's in-order, so the last source will override properties of the same name in previous arguments. _.extend({name: 'moe'}, {age: 50}); => {name: 'moe', age: 50}

_.findIndex

findIndex_.findIndex(array, predicate, [context]) Similar to _.indexOf, returns the first index where the predicate truth test passes; otherwise returns -1. _.findIndex([4, 6, 8, 12], isPrime); => -1 // not found _.findIndex([4, 6, 7, 12], isPrime); => 2

_.tail

rest_.rest(array, [index]) Alias: tail, drop Returns the rest of the elements in an array. Pass an index to return the values of the array from that index onward. _.rest([5, 4, 3, 2, 1]); => [4, 3, 2, 1]

_.find

find_.find(list, predicate, [context]) Alias: detect Looks through each value in the list, returning the first one that passes a truth test (predicate), or undefined if no value passes the test. The function returns as soon as it finds an acceptable element, and doesn't traverse the entire list. var even = _.find([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); => 2

_.forEach

each_.each(list, iteratee, [context]) Alias: forEach Iterates over a list of elements, yielding each in turn to an iteratee function. The iteratee is bound to the context object, if one is passed. Each invocation of iteratee is called with three arguments: (element, index, list). If list is a JavaScript object, iteratee's arguments will be (value, key, list). Returns the list for chaining. _.each([1, 2, 3], alert); => alerts each number in turn... _.each({one: 1, two: 2, three: 3}, alert