Switch branches/tags
Nothing to show
Clone or download
Latest commit 01c3072 Apr 2, 2018
Permalink
Failed to load latest commit information.
bin Initial commit Jun 28, 2015
.gitignore Initial commit Jun 28, 2015
LICENSE Update copyright Feb 17, 2016
README.md Add Object.values() Aug 29, 2017

README.md

Arrays

Iterate

  • Underscore

    _.each(array, iteratee)
  • ES5.1

    array.forEach(iteratee)

Map

  • Underscore

    _.map(array, iteratee)
  • ES5.1

    array.map(iteratee)

Use a function to accumulate a single value from an array (left-to-right)

  • Underscore

    _.reduce(array, iteratee, memo)
  • ES5.1

    array.reduce(iteratee, memo)

Use a function to accumulate a single value from an array (right-to-left)

  • Underscore

    _.reduceRight(array, iteratee, memo)
  • ES5.1

    array.reduceRight(iteratee, memo)

Test whether all elements in an array pass a predicate

  • Underscore

    _.every(array, predicate)
  • ES5.1

    array.every(predicate)

Test whether some element in an array passes a predicate

  • Underscore

    _.some(array, predicate)
  • ES5.1

    array.some(predicate)

Find a value in an array

  • Underscore

    _.find(array, predicate)
  • ES2015

    array.find(predicate)

Get a property from each element in an array

  • Underscore

    _.pluck(array, propertyName)
  • ES2015

    array.map(value => value[propertyName])

Check if array includes an element

  • Underscore

    _.includes(array, element)
  • ES2016

    array.includes(element)

Convert an array-like object to array

  • Underscore

    _.toArray(arguments)
  • ES2015

    [...arguments]

Convert an array of keys and values to an object

  • Underscore

    _.object(array)
  • ES2015

    array.reduce((result, [key, val]) => Object.assign(result, {[key]: val}), {})
  • Object Rest/Spread (Stage 2)

    array.reduce((result, [key, val]) => {...result, [key]: val}, {})

Create a copy of an array with all falsy values removed

  • Underscore

    _.compact(array)
  • ES5.1

    array.filter(Boolean)
  • ES2015

    array.filter(x => !!x)

Create a copy of an array with duplicates removed

  • Underscore

    _.uniq(array)
  • ES2015

    [...new Set(array)]

Find the index of a value in an array

  • Underscore

    _.indexOf(array, value)
  • ES5.1

    array.indexOf(value)

Find the index in an array by predicate

  • Underscore

    _.findIndex([4, 6, 7, 12], isPrime);
  • ES2015

    [4, 6, 7, 12].findIndex(isPrime);

Create an array with n numbers, starting from x

  • Underscore

    _.range(x, x + n)
  • ES2015

    Array.from(Array(n), (_, i) => x + i)

Objects

Names of own enumerable properties as an array

  • Underscore

    _.keys(object)
  • ES5.1

    Object.keys(object)

Number of keys in an object

  • Underscore

    _.size(object)
  • ES5.1

    Object.keys(object).length

Names of all enumerable properties as an array

  • Underscore

    _.allKeys(object)
  • ES2015

    [...Reflect.enumerate(object)]

Values

  • Underscore

    _.values(object)
  • ES2015

    Object.keys(object).map(key => object[key])
  • ES2017

    Object.values(object)

Create a new object with the given prototype and properties

  • Underscore

    _.create(proto, properties)
  • ES2015

    Object.assign(Object.create(proto), properties)

Create a new object from merged own properties

  • Underscore

    _.assign({}, source, { a: false })
  • ES2015

    Object.assign({}, source, { a: false })
  • Object Rest/Spread (Stage 2)

    { ...source, a: false }

Create a shallow clone of own properties of an object

  • Underscore

    _.extendOwn({}, object)
  • Object Rest/Spread (Stage 2)

    { ...object }

Check if an object is an array

  • Underscore

    _.isArray(object)
  • ES5.1

    Array.isArray(object)

Check if an object is a finite Number

  • Underscore

    _.isNumber(object) && _.isFinite(object)
  • ES2015

    Number.isFinite(object)

Functions

Bind a function to an object

  • Underscore

    foo(_.bind(function () {
      this.bar();
    }, this));
    
    foo(_.bind(object.fun, object));
  • ES2015

    foo(() => {
      this.bar();
    });
    
    foo(() => object.fun());

Utility

Identity function

  • Underscore

    _.identity
  • ES2015

    value => value

A function that returns a value

  • Underscore

    _.constant(value)
  • ES2015

    () => value

The empty function

  • Underscore

    _.noop
  • ES2015

    () => {}

Get the current time in milliseconds since the epoch

  • Underscore

    _.now()
  • ES5.1

    Date.now()

Template

  • Underscore

    var greeting = _.template("hello <%= name %>");
    greeting({ name: 'moe' });
  • ES2015

    const greeting = ({ name }) => `hello ${name}`;
    greeting({ name: 'moe' });