Security News
Namecheap Takes Down Polyfill.io Service Following Supply Chain Attack
Polyfill.io has been serving malware for months via its CDN, after the project's open source maintainer sold the service to a company based in China.
camelcase-keys
Advanced tools
Package description
The camelcase-keys npm package is designed to convert object keys to camel case. It can be used to transform keys in objects, arrays of objects, and deeply nested objects. This is particularly useful when dealing with APIs that return data in snake_case or other formats and you want to convert the keys to camelCase to maintain JavaScript naming conventions.
Convert object keys to camel case
Converts the keys of a single object to camel case. For example, {'foo_bar': true} would become {'fooBar': true}.
{"foo_bar": true}
Convert array of objects
Converts the keys of every object in an array to camel case. For example, [{'foo_bar': true}, {'bar_baz': false}] would become [{'fooBar': true}, {'barBaz': false}].
[{"foo_bar": true}, {"bar_baz": false}]
Deep key conversion
Converts keys to camel case recursively for deeply nested objects. For example, {'foo_bar': {'inner_key': 'value', 'another_key': {'deep_key': 'deep_value'}}} would become {'fooBar': {'innerKey': 'value', 'anotherKey': {'deepKey': 'deepValue'}}}.
{"foo_bar": {"inner_key": "value", "another_key": {"deep_key": "deep_value"}}}
Exclude keys from being camelCased
Allows certain keys to be excluded from being converted to camel case. For example, {'foo_bar': true, 'do_not_change': false} with 'do_not_change' as an excluded key would result in {'fooBar': true, 'do_not_change': false}.
{"foo_bar": true, "do_not_change": false}
The humps package is similar to camelcase-keys and provides functions for converting between camelCase and snake_case. It also offers the ability to decamelize keys, which camelcase-keys does not.
As the name suggests, snakecase-keys is designed to convert object keys to snake_case. It is the opposite of camelcase-keys, which converts keys to camelCase.
This package offers a variety of case transformations for object keys, including camelCase, snake_case, and others. It provides more general case conversion functionality compared to camelcase-keys, which focuses specifically on camelCasing.
Readme
Convert object keys to camelCase using
camelcase
$ npm install --save camelcase-keys
const camelcaseKeys = require('camelcase-keys');
// Convert an object
camelcaseKeys({'foo-bar': true});
//=> {fooBar: true}
// Convert an array of objects
camelcaseKeys([{'foo-bar': true}, {'bar-foo': false}]);
//=> [{fooBar: true}, {barFoo: false}]
camelcaseKeys({'foo-bar': true, nested: {unicorn_rainbow: true}}, {deep: true});
//=> {fooBar: true, nested: {unicornRainbow: true}}
const camelcaseKeys = require('camelcase-keys');
const argv = require('minimist')(process.argv.slice(2));
//=> {_: [], 'foo-bar': true}
camelcaseKeys(argv);
//=> {_: [], fooBar: true}
Type: Object
Object[]
Object or array of objects to camelCase.
Type: Object
Type: string[]
RegExp[]
Default: []
Exclude keys from being camelCased.
Type: boolean
Default: false
Recurse nested objects and objects in arrays.
MIT © Sindre Sorhus
FAQs
Convert object keys to camel case
The npm package camelcase-keys receives a total of 9,402,633 weekly downloads. As such, camelcase-keys popularity was classified as popular.
We found that camelcase-keys demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Polyfill.io has been serving malware for months via its CDN, after the project's open source maintainer sold the service to a company based in China.
Security News
OpenSSF is warning open source maintainers to stay vigilant against reputation farming on GitHub, where users artificially inflate their status by manipulating interactions on closed issues and PRs.
Security News
A JavaScript library maintainer is under fire after merging a controversial PR to support legacy versions of Node.js.