# object-length [![NPM version](https://badge.fury.io/js/object-length.svg)](http://badge.fury.io/js/object-length)  [![Build Status](https://travis-ci.org/jonschlinkert/object-length.svg)](https://travis-ci.org/jonschlinkert/object-length) 

> Get the length of an object's properties, excluding prototype properties. Works with dontEnum bugs.

## Install with [npm](npmjs.org)

```bash
npm i object-length --save
```

## Usage

```js
var len = require('object-length');

len({a: 'a', b: 'b'});
//=> 2
```

Works with `dontEnum` bug:

```js
len({'hasOwnProperty': 'abc', def: 'xyz'});
//=> 2
```

## Other object utils
* [get-value](https://github.com/jonschlinkert/get-value): Use property paths (`a.b.c`) get a nested value from an object.
* [is-plain-object](https://github.com/jonschlinkert/is-plain-object): Returns true if an object was created by the `Object` constructor.
* [for-own](https://github.com/jonschlinkert/for-own): Iterate over the own enumerable properties of an object, and return an object with properties that evaluate to true from the callback. Exit early by returning `false`. JavaScript/Node.js.
* [for-in](https://github.com/jonschlinkert/for-in): Iterate over the own and inherited enumerable properties of an objecte, and return an object with properties that evaluate to true from the callback. Exit early by returning `false`. JavaScript/Node.js
* [isobject](https://github.com/jonschlinkert/isobject): Returns true if the value is an object and not an array or null.
* [object.omit](https://github.com/jonschlinkert/object.omit): Return a copy of an object without the given keys.
* [object.filter](https://github.com/jonschlinkert/object.filter): Create a new object filtered to have only properties for which the callback returns true.
* [object.pick](https://github.com/jonschlinkert/object.pick): Returns a filtered copy of an object with only the specified keys, like `pick` from lo-dash / underscore.
* [object.pluck](https://github.com/jonschlinkert/object.pluck): Like pluck from underscore / lo-dash, but returns an object composed of specified properties, with values unmodified from those of the original object.
* [object.reduce](https://github.com/jonschlinkert/object.reduce): Reduces an object to a value that is the accumulated result of running each property in the object through a callback. Executes the callback function once for each own enumerable property in the object, receiving four arguments: the initial value (or valu

## Contributing
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/object-length/issues)

## Running tests
Install dev dependencies.

```bash
npm i -d && npm test
```

## Author

**Jon Schlinkert**
 
+ [github/jonschlinkert](https://github.com/jonschlinkert)
+ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) 

## License
Copyright (c) 2015 Jon Schlinkert  
Released under the MIT license

***

_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on March 20, 2015._