Skip to content

chiefjester/humps

 
 

Repository files navigation

humps Build status

Underscore-to-camelCase converter (and vice versa) for strings and object keys in JavaScript.

When converting object keys, it will walk the structure, converting any nested objects (or arrays of nested objects) along the way. Handy for converting JSON between JavaScript and Ruby/Rails APIs.

Takes inspiration from Ember Data and copies some utility functions from Underscore.js.

Usage

Converting strings

humps.camelize("hello_world"); // "helloWorld"
humps.decamelize("fooBar"); // "foo_bar""

Decamelizing strings with custom separator

humps.decamelize("helloWorld", "-"); // "hello-world"

Converting object keys

var object = {
  attr_one: "foo",
  attr_two: "bar"
};

object = humps.camelizeKeys(object);

object.attrOne === "foo"; // true
object.attrTwo === "bar"; // true

Arrays of objects are also converted

var array = [
  { attr_one: "foo" },
  { attr_one: "bar" }
];

array = humps.camelizeKeys(array);

array[0].attrOne === "foo"; // true
array[1].attrOne === "bar"; // true

Licence

humps is copyright © 2014 Dom Christie and released under the MIT license.

About

Underscore-to-camelCase converter (and vice versa) for strings and object keys in JavaScript.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 83.3%
  • Ruby 16.7%