Security News
RubyGems.org Adds New Maintainer Role
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
underscore
Advanced tools
The underscore npm package is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects. It includes a wide range of functions for collections, arrays, functions, objects, and more.
Collections
Iterates over a list of elements, yielding each in turn to an iteratee function.
_.each([1, 2, 3], function(num) { console.log(num); });
Arrays
Produces a duplicate-free version of the array.
_.uniq([1, 2, 1, 4, 1, 3]);
Functions
Curries a function so that it can be called with fewer arguments than it expects.
var greet = function(name) { return 'hi: ' + name; }; var greetCurried = _.curry(greet); greetCurried('Bob');
Objects
Copy all of the properties in the source objects over to the destination object.
_.extend({name: 'moe'}, {age: 50});
Utilities
Returns a random integer between the given min and max, inclusive.
_.random(0, 100);
Lodash is a modern JavaScript utility library delivering modularity, performance, & extras. It is often considered as a drop-in replacement for Underscore with additional features and improved performance.
Ramda is a practical functional library for JavaScript programmers. It emphasizes a purer functional style, immutability, and function composition, making it quite different from Underscore in terms of API design and usage patterns.
Lazy.js is a functional utility library similar to Underscore and Lodash, but with a focus on lazy evaluation, which can lead to significant performance improvements for certain types of operations on large datasets.
__
/\ \ __
__ __ ___ \_\ \ __ _ __ ____ ___ ___ _ __ __ /\_\ ____
/\ \/\ \ /' _ `\ /'_ \ /'__`\/\ __\/ ,__\ / ___\ / __`\/\ __\/'__`\ \/\ \ /',__\
\ \ \_\ \/\ \/\ \/\ \ \ \/\ __/\ \ \//\__, `\/\ \__//\ \ \ \ \ \//\ __/ __ \ \ \/\__, `\
\ \____/\ \_\ \_\ \___,_\ \____\\ \_\\/\____/\ \____\ \____/\ \_\\ \____\/\_\ _\ \ \/\____/
\/___/ \/_/\/_/\/__,_ /\/____/ \/_/ \/___/ \/____/\/___/ \/_/ \/____/\/_//\ \_\ \/___/
\ \____/
\/___/
Underscore.js is a utility-belt library for JavaScript that provides support for the usual functional suspects (each, map, reduce, filter...) without extending any core JavaScript objects.
For Docs, License, Tests, and pre-packed downloads, see: https://underscorejs.org
For support and questions, please consult our security policy, the gitter channel or stackoverflow
Underscore is an open-sourced component of DocumentCloud: https://github.com/documentcloud
Many thanks to our contributors: https://github.com/jashkenas/underscore/contributors
You can support the project by donating on Patreon. Enterprise coverage is available as part of the Tidelift Subscription.
This project adheres to a code of conduct. By participating, you are expected to uphold this code.
FAQs
JavaScript's functional programming helper library.
We found that underscore demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.
Security News
Research
Socket's threat research team has detected five malicious npm packages targeting Roblox developers, deploying malware to steal credentials and personal data.