1.1.5 • Published 6 years ago

sjn v1.1.5

Weekly downloads
3
License
MIT
Repository
github
Last release
6 years ago

sjn

Short JSON strings. JSON API compatible with failover to JSON. Strips falsy values. Only shortens flat objects.

Install

npm i sjn

Usage

var sJSON = require('sjn');

sJSON.stringify({hello:'world'}) // hello:world
sJSON.parse('hello:world')       // {hello: 'world'}

Values

Source ValueStringify ValueParse return Value
false (boolean)0 (string)0 (number, truthy false)
null (object)0 (string)0 (number, truthy false)
undefined (undefined)0 (string)0 (number, truthy false)
0 (number)0 (string)0 (number)
9 (number)9 (string)9 (number)
3.14 (number)3.14 (string)3.14 (number)
"" (string)"" (string)"" (string)
"hi" (string)"hi" (string)"hi" (string)
{"hi":"mom"} (object)hi:mom (string){"hi":"mom"} (object)
{"hi":"you, said"} (object){"hi":"you, said"} (string){"hi":"you, said"} (object)
{"hi":"m:m"} (object){"hi":"m:m"} (string){"hi":"m:m"} (object)
{"try":1} (object)try:1 (string){"try":1} (object)
{"yes":true} (object)yes:1 (string){"yes":1} (object)
{"omit":0} (object){} (string, falsy value removed){} (object)
{"falsy":false} (object){} (string, falsy value removed){} (object)
{"nully":null} (object){} (string, falsy value removed){} (object)
{"nan":null} (object){} (string, falsy value removed){} (object)
{"infinity":null} (object){} (string, falsy value removed){} (object)
{} (object){} (string){} (object)
{"hi":"mom","luv":"you"} (object)hi:mom,luv:you (string){"hi":"mom","luv":"you"} (object)
{"i":"will","take":0} (object)i:will (string){"i":"will"} (object)
{"will":"this do"} (object)will:this+do (string, + for spaces){"will":"this do"} (object)
{"first":1,"second":1,"third":1} (object)first:1,second,third (string, 1 assumed, truthy, after first entry){"first":1,"second":1,"third":1} (object)
"hello:" (string)"hello:" (string)"hello:" (string)
"hello:world" (string)"hello:world" (string)"hello:world" (string)
{"400":400} (object)400:400 (string){"400":400} (object)
{"100":1,"200":1,"300":1} (object)100:1,200,300 (string, 1 assumed, truthy, after first entry){"100":1,"200":1,"300":1} (object)

Why?

Because every byte helps when you scale :-)

License: MIT

1.1.5

6 years ago

1.1.4

6 years ago

1.1.3

6 years ago

1.1.2

6 years ago

1.1.1

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago