Need advice about which tool to choose?Ask the StackShare community!

Immutable.js

418
120
+ 1
17
Lodash

7.5K
886
+ 1
3
Underscore

1.8K
589
+ 1
290
Decisions about Immutable.js, Lodash, and Underscore

Fast Healthcare Interoperability Resources (FHIR) provides standard data objects in JSON format for the healthcare industry. Since JSON objects are hierarchical and tree-like, we had a need to defensively 'pluck' fields from our JSON objects and do lots of mapping. We tried jQuery and Underscore and a few other technologies like FHIRPath; but Lodash has been the most well supported, works in the most contexts, has the cleanest syntax, etc. We particularly like the ES6 version of Lodash, where we can import the method names directly, without resorting to * or _ syntax. We got hooked on the 'get' function to defensively pluck fields from objects without crashing our user interface, and have found countless uses for the other lodash functions throughout our apps. Lodash is great for developing and optimizing algorithms.

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Immutable.js
Pros of Lodash
Pros of Underscore
  • 8
    Immutable data structures
  • 5
    Allows you to mimic functional programming
  • 2
    Bring the functional experience to JS
  • 1
    Makes writing Javascript less scary
  • 1
    Easily transpiles to different ES standards
  • 2
    Better than Underscore
  • 1
    Simple
  • 0
    Better that Underscore
  • 85
    Utility
  • 55
    Simple
  • 40
    Functional programming
  • 32
    Fast
  • 28
    Open source
  • 20
    Backbone
  • 16
    Javascript
  • 8
    Annotated source code
  • 6
    Library

Sign up to add or upvote prosMake informed product decisions

Cons of Immutable.js
Cons of Lodash
Cons of Underscore
    Be the first to leave a con
    • 1
      It reduce the performance
      Be the first to leave a con

      Sign up to add or upvote consMake informed product decisions

      - No public GitHub repository available -

      What is Immutable.js?

      Immutable provides Persistent Immutable List, Stack, Map, OrderedMap, Set, OrderedSet and Record. They are highly efficient on modern JavaScript VMs by using structural sharing via hash maps tries and vector tries as popularized by Clojure and Scala, minimizing the need to copy or cache data.

      What is Lodash?

      A JavaScript utility library delivering consistency, modularity, performance, & extras. It provides utility functions for common programming tasks using the functional programming paradigm.

      What is Underscore?

      A JavaScript library that provides a whole mess of useful functional programming helpers without extending any built-in objects.

      Need advice about which tool to choose?Ask the StackShare community!

      What companies use Immutable.js?
      What companies use Lodash?
      What companies use Underscore?

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Immutable.js?
      What tools integrate with Lodash?
      What tools integrate with Underscore?
        No integrations found

        Blog Posts

        What are some alternatives to Immutable.js, Lodash, and Underscore?
        Ramda
        It emphasizes a purer functional style. Immutability and side-effect free functions are at the heart of its design philosophy. This can help you get the job done with simple, elegant code.
        jQuery
        jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
        React
        Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
        AngularJS
        AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding.
        Vue.js
        It is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API.
        See all alternatives