A library for object manipulation and differential operations, prototypal inheritance, and more.






Returns undefined.

Returns this.

Returns type reported by toString.

Set andPrototype to something truthy and obj will have to be empty all the way through.

Like jQuery, with a callback signature of key, value, obj.

Like ES5 forEach, with a callback signature of value, key, obj.

Like jQuery, with an option flags string.

  • 'deep' : Same as the optional Boolean flag in jQuery
  • 'own' : Restricts extended properties to those filtered by `Object.hasOwnProperty`
  • 'all' : Includes keys with undefined values

Extracts elements of nested arrays.

Returns an object's keys in an ordered string array.

For an array whose values are unique key strings, this returns an object that is a key-value inversion of array.

Set every key in obj to value.

Set every key in obj to null.

Given an array of keys, return an object with those keys all set to null.

Return the function fn, with its toString method set to itself. Might break stuff, like type, but can be useful for, say, devtools-inspecting the value of a getter.

Same as above, but for valueOf instead of toString.