0.1.0 • Published 6 years ago
js-jsonf v0.1.0
js-jsonf
JS Objects w/ function support.
Move JS from one live system to another.
engines: node >= 8.x
Example
const {encode, decode} = require('js-jsonf');
const obj = {
a: 1,
b() {
return 1;
}
};
const str = encode(obj);
const obj1 = decode(str);
Installation
npm i js-jsonf --save
API
.encode(obj, throwOnInvalidType = false)
Returns false
given an invalid type.
.decode(str, throwOnInvalidSyntax = false)
Returns undefined
given a invalid syntax.
Supported data types
- String
- Boolean
- Number
- Array
- Object
- Date
- Function (all combinations of: regular, async, generator, arrow)
- NaN
- null
- undefined
All types are supported when wrapped in a function.
Caveats
Function behavior is normalized and consistent; however, the parsed function may contain slight formatting differences from the original; its functionality however, will remain consistent.
Perf
As fast as native JSON.parse() JSON.stringify():
// 1M iterations. Each iteration calls both encode and decode.
// js-jsonf:
// milliseconds: 6833.45
// ops/sec: 146,338.965
// ---
// control (native):
// milliseconds: 7033.58
// ops/sec: 142,175.109
License
MIT
0.1.0
6 years ago