sorted-json-js
Sort keys and array elements in a JSON.
Quick Example 1:
Using .sortify(...)
with { sortArray: true }
options to sort an object:
var sortedJSON = require('sorted-json');
var obj_1 = {
numberArray: [3, 1, 2],
anotherJSON: {
stringArray: ['cat', 'book', 'apple'],
numberA: 2,
numberB: 1
},
number1: 2,
number2: 1
};
console.log(sortedJSON.sortify(obj_1, { sortArray: true }));
Output:
{
anotherJSON: { numberA: 2, numberB: 1, stringArray: [ 'apple', 'book', 'cat' ] },
number1: 2,
number2: 1,
numberArray: [ 1, 2, 3 ]
}
Quick Example 2:
Using .stringify(...)
to get a sorted JSON string:
var obj_2 = {
numberArray: [3, 1, 2],
anotherJSON: {
stringArray: ['cat', 'book', 'apple'],
numberA: 2,
numberB: 1
},
number1: 2,
number2: 1
};
console.log(sortedJSON.stringify(obj_2));
Output:
{"anotherJSON":{"numberA":2,"numberB":1,"stringArray":["cat","book","apple"]},"number1":2,"number2":1,"numberArray":[3,1,2]}
API:
.sortify(obj [, options])
Sort an object and return it.
Parameter | Type | Required | Default | Description |
---|---|---|---|---|
obj |
object | Yes | | The object to sort | |
options |
object | | {} |
Sort options | |
options.sortBy |
function | | undefined |
Specifies a function that defines the sort order. Same to compareFunction parameter in Array.prototype.sort(compareFunction) |
|
options.sortKey |
boolean | | true |
Sort the keys in obj or not |
|
options.sortArray |
boolean | | true |
Sort the array elements in `obj or not | |
options.stringify |
boolean | | false |
Output the stringified obj or not (Using JSON.stringify() ) |
|
options.replacer |
| | | Parameter for JSON.stringify() |
||
options.space |
| | | Parameter for JSON.stringify() |
.stringify(obj)
Parameter | Type | Required | Default | Description |
---|---|---|---|---|
obj |
object | Yes | | The object to sort |
Install:
npm install sorted-json
Test:
npm test