o - JS Library for Object Manipulation
Join the DZone community and get the full member experience.Join For Free
manipulation. Compressed and gzipped weights around 0,5 kb. It should
work on IE 5.5 and latter. Also there is lite version that doesn't make
hasOwnProperty check that will run faster and with less code.
When I was working on Object Auto Documentation I realized that can be handy if I had small library for dealing exclusively with JS objects.
That is how the idea for this library was born. Basically this library is nothing new or glamorous is just the tool I needed. The library contains methods like adding, removing values in the object, extracting object keys and values, object extending and cloning, transforming the object to JSON and JSON to object and many more..
I also included the lite version that is basically the same code only without hasOwnProperty verification for speed gain.
One thing that surprised me is the native Object.keys method for extracting values is slower than for in loop method. Here are some speed tests that I find on jsperf.com http://jsperf.com/object-keys-iteration/3 and http://jsperf.com/object-keys-vs-for-in-for-values/2 .
I decided to implement the native Object.keys method for modern browsers and for in loop method for older browsers, in many browsers the native method is slower then for in method but probably the Object.keys will get some speed optimization in the future browsers. If you are using o-lite.js you will experience the pure velocity of .keys and .values method.
Here are the list of all the methods with examples.
The structure of the library (Auto Documentation)
Download the library on GitHub
Opinions expressed by DZone contributors are their own.