Skip to content
/ proto Public

ES5-compatible object manipulation library for node and modern browsers

Notifications You must be signed in to change notification settings

milojs/proto

Repository files navigation

proto

ES5-compatible object manipulation library for node and modern browsers

Build Status npm version Code Climate Test Coverage

Documentation: http://milojs.github.io/proto/

Why not use underscore or lo-dash

  1. They do NOT use properties that are non-enumerable when they extend/clone/etc.
  2. They DO use enumerable properties from prototypes when they extend/clone/etc.
  3. When they clone, they create instances of Object rather than of the same class as cloned object.
  4. They implement many methods that are already implemented natively.
  5. They don't implement methods for inheritance and extention of prototypes.
  6. They create confusion when you read code as you can't clearly differentiate between arrays and objects (maps), e.g. when each function is used.
  7. Underscore has clumbersome chaining syntax, chaining in proto is more succinct.

Install

npm install mol-proto --save

To use and develop:

git clone git@github.com:milojs/proto.git
cd proto
npm link
cd ../<your project>
npm link mol-proto

Use

Node/browserify:

var _ = require('mol-proto');

Browser:

All functions are exported as properties of a global _ object when used with milo, there is no separate proto bundle yet (will be added shortly).

Functions

About

ES5-compatible object manipulation library for node and modern browsers

Resources

Stars

Watchers

Forks

Packages

No packages published