Objekto
Objekto is a small utility to convert an object into a string ({a: 'foo', b: {c: {d: 'bar'}}} to 'a=foo;b|c|d=bar') and vice versa.
npm install --save objekto
Import
Require:
var ots = ;var objectToString = otsobjectToString;var stringToObject = otsstringToObject;
var objectToString = ;var stringToObject = ;
ES6:
;
;;
Usage
Convert an object into a string or vice versa:
var obj0 = a: 'foo';var str0 = 'a=foo';console; // -> trueconsole; // -> true var obj1 = a: 'foo' b: 'bar';var str1 = 'a=foo;b=bar';console; // -> trueconsole; // -> true var obj2 = a: 'foo' b: 'bar' c: d: 'foobar' ;var str2 = 'a=foo;b=bar;c|d=foobar';console; // -> trueconsole; // -> true
Options:
var object = a: 'foo' b: c: 'bar' ; var string = 'a~foo||b.c~bar'; var options = keySeparator: '||' keyValueSeparator: '~' levelSeparator: '.'; console; // -> trueconsole; // -> true
See test cases for other examples.
Tests
npm test
Notice on performance
You should note that on large and complex objects objectToString is about 3-4 times slower than JSON.stringify, stringToObject is about 2 times slower than JSON.parse. Run npm run benchmark
to see for yourself. I suggest to use this utils only in case you really can't afford native JSON methods.
Changelog
- 1.1.3: Update merge.js and tests.
- 1.1.2: Added benchmark.
- 1.1.1: Removed lodash dependency.
- 1.1.0: Performance improvements.
- 1.0.0: Initial release.
License
P.S.
"Objekto" is an esperanto word for 'object' (which is pretty obvious, I guess).