Convert an object's keys to snake case
npm install snakecase-keys> Convert an object's keys to snake case
```
npm install snakecase-keys
`js
import snakecaseKeys from 'snakecase-keys'
snakecaseKeys({ fooBar: 'baz' })
//=> { foo_bar: 'baz' }
snakecaseKeys({ 'foo-bar': true, nested: { fooBaz: 'bar' } })
//=> { foo_bar: true, nested: { foo_baz: 'bar' } }
`
#### snakecaseKeys(obj, options) -> object
##### obj
Required
Type: object | Array
A plain object or array of plain objects to transform into snake case (keys only).
##### options
Optional
Type: object
###### deep
Type: boolean true
Default:
Enables snake-casing of keys in nested objects.
###### exclude
Type: Array []
Default:
An array of strings or regular expressions matching keys that will be excluded from snake-casing.
###### shouldRecurse(key, val) -> boolean
Optional
Type: function
A function that determines if val should be recursed.
Requires deep: true.
###### parsingOptions
Type: object {}
Default:
Options object passed to the built-in snakeCase function from change-case. Available options include:
- split: Custom function to split strings into wordslocale
- : Locale for case conversionseparateNumbers
- : Whether to separate numbers (deprecated, use splitSeparateNumbers)delimiter
- : Custom delimiter between wordsprefixCharacters
- : Characters to preserve at startsuffixCharacters
- : Characters to preserve at end
See change-case for full documentation.
###### snakeCase
Optional
Type: (key: string) => string
Custom function to convert a key to snake case. Use this to fully override the default behavior of the library and convert keys according to your own conventions. When provided, the return type will be a generic Record
* camelcase-keys
* kebabcase-keys
MIT © Ben Drucker