You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
3 years ago | |
|---|---|---|
| .. | ||
| .gitattributes | 3 years ago | |
| .jshintrc | 3 years ago | |
| .npmignore | 3 years ago | |
| .verbrc.md | 3 years ago | |
| LICENSE-MIT | 3 years ago | |
| README.md | 3 years ago | |
| index.js | 3 years ago | |
| package.json | 3 years ago | |
| test.js | 3 years ago | |
README.md
sort-object 
Sort the keys in an object.
Install
Install with npm
npm i sort-object --save
Usage
var sortObj = require('sort-object');
By default, the keys on an object will be sorted in descending order:
console.log(sortObj({a: 1, c: 2, b: 3}));
//=> {a: 1, b: 3, c: 2}
The second param can be an object of options OR an array of keys:
object
console.log(sortObj({a: 1, c: 2, b: 3}, {keys: ['a', 'b']}));
//=> {a: 1, b: 3}
array
console.log(sortObj({a: 1, c: 2, b: 3}, ['a', 'c']));
//=> {a: 1, c: 2}
Options
keys{Array} The returned object will contain only the specified keys, in the same order.sort{Function} Sort function to sort the keys using JavaScript's.sort()method.sortOrder{String} Valid values aredescorasc, case insensitive.sortBy{String} Sort function that is passed the entire object, rather than just the keys - as with the.sort()method.
options.keys
Create a new object with only the given keys.
var o = {a: 1, c: 2, e: 5, d: 4, b: 3};
console.log(sortObj(o, {keys: ['a', 'b']}));
//=> {a: 1, b: 3}
options.sort
Function to be passed to javascript's .sort() method:
var o = {a: 1, c: 2, e: 5, d: 4, b: 3};
var obj = sortObj(o, {
sort: function (a, b) {
return a < b ? -1 : 1;
}
});
console.log(obj);
//=> {a: 1, b: 3, c: 2, d: 4, e: 5}
options.sortOrder
Valid values are desc or asc, case insensitive:
var o = {a: 1, c: 2, e: 5, d: 4, b: 3};
console.log(sortObj(o, {sortOrder: 'ASC'}));
//=> {e: 5, d: 4, c: 3, b: 2, a: 1}
options.sortBy
Function that returns an array of keys to sort by:
var old = {one: 'aa', two: 'bc', three: 'ab'};
var o = sortObj(old, {
sortBy: function (obj) {
var arr = [];
Object.keys(obj).filter(function(key) {
if (/^a/.test(obj[key])) arr.push(key);
});
return arr.reverse();
}
});
//=> {three: 'ab', one: 'aa'}
Author
Brian Woodward
License
Copyright (c) 2014 Brian Woodward, contributors.
Released under the MIT license
This file was generated by verb-cli on October 24, 2014.