{"_id":"object-loops","_rev":"299374","name":"object-loops","description":"Functional methods like forEach, map, filter, and other Array methods for Objects in javascript","dist-tags":{"latest":"0.8.0"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"time":{"modified":"2021-06-03T19:02:47.000Z","created":"2014-12-24T06:39:07.821Z","0.8.0":"2016-08-21T09:13:31.723Z","0.7.1":"2016-08-15T03:20:25.543Z","0.7.0":"2016-03-18T07:12:43.376Z","0.6.0":"2016-03-17T22:32:06.393Z","0.5.2":"2016-03-15T05:11:58.449Z","0.5.1":"2015-12-06T02:42:49.639Z","0.5.0":"2015-12-06T01:08:40.884Z","0.4.1":"2015-12-03T08:21:43.656Z","0.4.0":"2015-12-03T07:53:20.672Z","0.3.1":"2015-10-15T23:30:45.045Z","0.3.0":"2015-10-15T20:55:23.897Z","0.2.0":"2015-10-06T02:01:48.702Z","0.1.1":"2015-01-06T20:09:56.977Z","0.1.0":"2014-12-24T06:39:07.821Z"},"users":{"lgomez":true},"author":{"name":"Tejesh Mehta"},"repository":{"type":"git","url":"git+https://github.com/tjmehta/object-loops.git"},"versions":{"0.8.0":{"name":"object-loops","version":"0.8.0","description":"Functional methods like forEach, map, filter, and other Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"git+https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.6.1","dasherize":"^2.0.0"},"devDependencies":{"camelize":"^1.0.0","code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"0ef3ed16c400d6f366d35a3584aae89067a5c5bf","_id":"object-loops@0.8.0","_shasum":"270a427c3ea3ba0f53e6bccfb3f2819f4adddc90","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"dist":{"shasum":"270a427c3ea3ba0f53e6bccfb3f2819f4adddc90","size":12079,"noattachment":false,"key":"/object-loops/-/object-loops-0.8.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.8.0.tgz"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/object-loops-0.8.0.tgz_1471770811483_0.0928693872410804"},"publish_time":1471770811723,"_cnpm_publish_time":1471770811723,"_hasShrinkwrap":false},"0.7.1":{"name":"object-loops","version":"0.7.1","description":"Functional methods like forEach, map, filter, and other Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"git+https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.6.1","dasherize":"^2.0.0"},"devDependencies":{"camelize":"^1.0.0","code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"d955d1fcd0219d54a07d774c98dc23c94671c6a4","_id":"object-loops@0.7.1","_shasum":"f5c132cb743b670d904d3e0efec3db4aafcd8ec1","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"dist":{"shasum":"f5c132cb743b670d904d3e0efec3db4aafcd8ec1","size":10922,"noattachment":false,"key":"/object-loops/-/object-loops-0.7.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.7.1.tgz"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/object-loops-0.7.1.tgz_1471231223923_0.9803963559679687"},"publish_time":1471231225543,"_cnpm_publish_time":1471231225543,"_hasShrinkwrap":false},"0.7.0":{"name":"object-loops","version":"0.7.0","description":"Functional methods like forEach, map, filter, and other Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"a2dae7de53c4dc75be7eb7628a335023913a0301","_id":"object-loops@0.7.0","_shasum":"37e34da52cfcb82de17f97dc2673b2be2eb9c665","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"dist":{"shasum":"37e34da52cfcb82de17f97dc2673b2be2eb9c665","size":10648,"noattachment":false,"key":"/object-loops/-/object-loops-0.7.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.7.0.tgz"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/object-loops-0.7.0.tgz_1458285163010_0.17731971852481365"},"publish_time":1458285163376,"_cnpm_publish_time":1458285163376,"_hasShrinkwrap":false},"0.6.0":{"name":"object-loops","version":"0.6.0","description":"Functional methods like forEach, map, filter, and other Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"dd995fa2f7d6153ebd551ec8dacc27275f0fe904","_id":"object-loops@0.6.0","_shasum":"930833cd2d0f7a36a3c0707bda63cb51c5ef9eed","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"dist":{"shasum":"930833cd2d0f7a36a3c0707bda63cb51c5ef9eed","size":10092,"noattachment":false,"key":"/object-loops/-/object-loops-0.6.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.6.0.tgz"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/object-loops-0.6.0.tgz_1458253925763_0.9307206068187952"},"publish_time":1458253926393,"_cnpm_publish_time":1458253926393,"_hasShrinkwrap":false},"0.5.2":{"name":"object-loops","version":"0.5.2","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"4c17e4579d56823bf6cb65360e17ab139480cf4a","_id":"object-loops@0.5.2","_shasum":"b4e7dfa4e55e57b72c5c35de05bee313e9bcd88d","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.5.0","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"dist":{"shasum":"b4e7dfa4e55e57b72c5c35de05bee313e9bcd88d","size":8802,"noattachment":false,"key":"/object-loops/-/object-loops-0.5.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.5.2.tgz"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/object-loops-0.5.2.tgz_1458018718013_0.2002111366018653"},"publish_time":1458018718449,"_cnpm_publish_time":1458018718449,"_hasShrinkwrap":false},"0.5.1":{"name":"object-loops","version":"0.5.1","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"13f05012fb800f6d83b9d04233f9a0ce2122d135","_id":"object-loops@0.5.1","_shasum":"73aa0208e7c19f5e979da3586d03185350d4fdae","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.1","_npmUser":{"name":"tjmehta","email":"tj_mehta@hotmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"73aa0208e7c19f5e979da3586d03185350d4fdae","size":8798,"noattachment":false,"key":"/object-loops/-/object-loops-0.5.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.5.1.tgz"},"publish_time":1449369769639,"_cnpm_publish_time":1449369769639,"_hasShrinkwrap":false},"0.5.0":{"name":"object-loops","version":"0.5.0","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"e484bf80b6a5645b7d8728b7cca47c75a1f30d13","_id":"object-loops@0.5.0","_shasum":"298d097361587657675a6e33a5d27cf84ba93091","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.1","_npmUser":{"name":"tjmehta","email":"tj_mehta@hotmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"298d097361587657675a6e33a5d27cf84ba93091","size":8797,"noattachment":false,"key":"/object-loops/-/object-loops-0.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.5.0.tgz"},"publish_time":1449364120884,"_cnpm_publish_time":1449364120884,"_hasShrinkwrap":false},"0.4.1":{"name":"object-loops","version":"0.4.1","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"b34cf80f080ca3cd0c960bd353341f2670e59ad8","_id":"object-loops@0.4.1","_shasum":"9c085a4ada52bb95c8aa28afad07dd88e3fd8e57","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tjmehta","email":"tj_mehta@hotmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"9c085a4ada52bb95c8aa28afad07dd88e3fd8e57","size":7723,"noattachment":false,"key":"/object-loops/-/object-loops-0.4.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.4.1.tgz"},"publish_time":1449130903656,"_cnpm_publish_time":1449130903656,"_hasShrinkwrap":false},"0.4.0":{"name":"object-loops","version":"0.4.0","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -t 100 -a code","test-watch":"nodemon --exec npm test","lint":"standard","format":"standard --format"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","map keys","keys","mapKeys","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^1.2.0","dasherize":"^2.0.0"},"devDependencies":{"code":"^1.5.0","lab":"^6.2.0","nodemon":"^1.8.1","sinon":"^1.17.2","standard":"^5.4.1"},"gitHead":"d15e39edbfabeaadfc8c8f8130945de5db4c1ecf","_id":"object-loops@0.4.0","_shasum":"a37d44b72969baa909063c96468fdd8c2597506d","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tjmehta","email":"tj_mehta@hotmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"a37d44b72969baa909063c96468fdd8c2597506d","size":7707,"noattachment":false,"key":"/object-loops/-/object-loops-0.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.4.0.tgz"},"publish_time":1449129200672,"_cnpm_publish_time":1449129200672,"_hasShrinkwrap":false},"0.3.1":{"name":"object-loops","version":"0.3.1","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -c test","test-watch":"nodemon --exec lab -c test"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^0.8.0","dasherize":"^1.0.0"},"devDependencies":{"i":"^0.3.2","code":"^1.2.1","lab":"^5.1.0","nodemon":"^1.2.1","sinon":"^1.12.2"},"gitHead":"59f8bf14223ec7db884815aaf4ee1ca431a738ca","_id":"object-loops@0.3.1","_shasum":"ddda59c9ba80d07da3042af39a08ac9e522d3b30","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"ddda59c9ba80d07da3042af39a08ac9e522d3b30","size":6887,"noattachment":false,"key":"/object-loops/-/object-loops-0.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.3.1.tgz"},"publish_time":1444951845045,"_cnpm_publish_time":1444951845045,"_hasShrinkwrap":false},"0.3.0":{"name":"object-loops","version":"0.3.0","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -c test","test-watch":"nodemon --exec lab -c test"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^0.8.0","dasherize":"^1.0.0"},"devDependencies":{"i":"^0.3.2","code":"^1.2.1","lab":"^5.1.0","nodemon":"^1.2.1","sinon":"^1.12.2"},"gitHead":"eb9105915c2ec04044a575f3567f97e96a9201af","_id":"object-loops@0.3.0","_shasum":"addd9757c144b28f275a7bfa7646f9a1a91e7b50","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"addd9757c144b28f275a7bfa7646f9a1a91e7b50","size":6837,"noattachment":false,"key":"/object-loops/-/object-loops-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.3.0.tgz"},"publish_time":1444942523897,"_cnpm_publish_time":1444942523897,"_hasShrinkwrap":false},"0.2.0":{"name":"object-loops","version":"0.2.0","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -c test","test-watch":"nodemon --exec lab -c test"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^0.8.0","dasherize":"^1.0.0"},"devDependencies":{"i":"^0.3.2","code":"^1.2.1","lab":"^5.1.0","nodemon":"^1.2.1","sinon":"^1.12.2"},"gitHead":"d4539981eee6f4eede255074f3138f9066187bbd","_id":"object-loops@0.2.0","_shasum":"f674f9c9c9a80737da8b829baa6c55ec68963c5c","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"f674f9c9c9a80737da8b829baa6c55ec68963c5c","size":6246,"noattachment":false,"key":"/object-loops/-/object-loops-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.2.0.tgz"},"publish_time":1444096908702,"_cnpm_publish_time":1444096908702,"_hasShrinkwrap":false},"0.1.1":{"name":"object-loops","version":"0.1.1","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -c test","test-watch":"nodemon --exec lab -c test"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^0.8.0","dasherize":"^1.0.0"},"devDependencies":{"i":"^0.3.2","code":"^1.2.1","lab":"^5.1.0","nodemon":"^1.2.1","sinon":"^1.12.2"},"gitHead":"151cfb061e1c42e91e264173fce9c88c602c2475","_id":"object-loops@0.1.1","_shasum":"8f0980270caafee6a8a7279cbc0da2a8b036d92a","_from":".","_npmVersion":"2.1.11","_nodeVersion":"0.10.28","_npmUser":{"name":"tjmehta","email":"tejesh.mehta@gmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"dist":{"shasum":"8f0980270caafee6a8a7279cbc0da2a8b036d92a","size":5949,"noattachment":false,"key":"/object-loops/-/object-loops-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.1.1.tgz"},"publish_time":1420574996977,"_cnpm_publish_time":1420574996977,"_hasShrinkwrap":false},"0.1.0":{"name":"object-loops","version":"0.1.0","description":"Functional methods like forEach, map, filter, and other ES5 Array methods for Objects in javascript","main":"index.js","directories":{"test":"test"},"scripts":{"test":"lab -c test","test-watch":"nodemon --exec lab -c test"},"repository":{"type":"git","url":"https://github.com/tjmehta/object-loops.git"},"keywords":["object","functional","methods","forEach","map","reduce","filter","some","every","extended","function"],"author":{"name":"Tejesh Mehta"},"license":"MIT","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"homepage":"https://github.com/tjmehta/object-loops","dependencies":{"101":"^0.8.0","dasherize":"^1.0.0"},"devDependencies":{"i":"^0.3.2","code":"^1.2.1","lab":"^5.1.0","nodemon":"^1.2.1","sinon":"^1.12.2"},"_id":"object-loops@0.1.0","dist":{"shasum":"ae38d4e6bc789ccab468472b2500166de76ee07e","size":5942,"noattachment":false,"key":"/object-loops/-/object-loops-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/object-loops/download/object-loops-0.1.0.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"tjmehta","email":"tj_mehta@hotmail.com"},"maintainers":[{"name":"tjmehta","email":"tejesh.mehta@gmail.com"}],"publish_time":1419403147821,"_cnpm_publish_time":1419403147821,"_hasShrinkwrap":false}},"readme":"object-loops [![Build Status](https://travis-ci.org/tjmehta/object-loops.svg)](https://travis-ci.org/tjmehta/object-loops)\n============\n\nFunctional methods like forEach, map, filter, and other Array methods for Objects in javascript\n\n# Installation\n\n`npm install object-loops`\n\n# Index\n\n[chain](https://github.com/tjmehta/object-loops#usage)\n\n[every](https://github.com/tjmehta/object-loops#every)\n\n[inverse](https://github.com/tjmehta/object-loops#inverse)\n\n[filter](https://github.com/tjmehta/object-loops#filter)\n\n[findKey](https://github.com/tjmehta/object-loops#findKey)\n\n[find](https://github.com/tjmehta/object-loops#find)\n\n[forEach](https://github.com/tjmehta/object-loops#forEach)\n\n[keys](https://github.com/tjmehta/object-loops#keys)\n\n[keysIn](https://github.com/tjmehta/object-loops#keysIn)\n\n[mapKeys](https://github.com/tjmehta/object-loops#mapKeys)\n\n[map](https://github.com/tjmehta/object-loops#map)\n\n[reduce](https://github.com/tjmehta/object-loops#reduce)\n\n[some](https://github.com/tjmehta/object-loops#some)\n\n[values](https://github.com/tjmehta/object-loops#values)\n\n[valuesIn](https://github.com/tjmehta/object-loops#valuesIn)\n\n# Usage\n\n#### You can require each method individually `object-loops/<loop>`\n\n```js\nvar filter = require('object-loops/filter')\nvar forEach = require('object-loops/for-each')\nvar mapKeys = require('object-loops/map-keys')\nvar map = require('object-loops/map')\nvar reduce = require('object-loops/reduce')\n//... and more\n// usage\nforEach({ x:10, y: 20 }, callback)\nfilter({ x:10, y: 20 }, callback)\nmapKeys({ x:10, y: 20 }, callback)\nmap({ x:10, y: 20 }, callback)\nreduce({ x:10, y: 20 }, callback)\n```\n\n#### If you want to chain multiple object-loops use `object-loops/chain`\n\n```js\nvar chain = require('object-loops/chain')\nchain({ x:10, y: 20 })\n  .filter(callback)\n  .mapKeys(callback)\n  .map(callback)\n  .reduce(callback)\n  .toJSON() // must be called at the end to return modified object\n\n```\n\n#### If you want to use forEach, map, reduce, filter, etc methods directly on objects:\n\n```js\nrequire('object-loops')() // extends Object.prototype\nobj.forEach(callback)\nobj.filter(callback)\nobj.mapKeys(callback)\nobj.map(callback)\nobj.reduce(callback)\n```\n\n## every\n\nTests whether every value in the object passes the test implemented by the callback.\n\n * @function module:object-loops/every\n * @param {object} [obj] - object to iterate through, not accepted if being used directly on Object.prototype\n * @param {everyCallback} callback - function to test each value in the object. return falsey to end the loop, truthy otherwise.\n * @param {*} [thisArg] - optional. context to bind to callback\n * @returns {boolean} if callback returns false, the loop is ended and false is returned (else false)\n\n```js\nvar every = require('object-loops/every')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30,\n  qux: 40,\n}\nvar allGreaterThan25 = every(obj, function (val, key, obj) {\n  return val > 25\n})\nallGreaterThan25 // false\n*/\n```\n\n## inverse\n\nCreates a new object with keys and values flipped.\n\n* @param {object} [obj] - object to inverse keys and values, not accepted if being used directly on Object.prototype\n* @returns {object} newly created object with inversed values\n\n```js\nvar inverse = require('object-loops/inverse')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30\n}\nvar inversedObj = inverse(obj)\ninversedObj /* keys and vals are flipped\n{\n  '10': 'foo',\n  '20': 'bar',\n  '30': 'baz'\n}\n*/\n```\n\n## filter\n\nCreates a new object with all entries that pass the test implemented by the provided function.\n\n * @param {object} [obj] - object to filter values, not accepted if being used directly on Object.prototype\n * @param {function} callback - function to test each value in the object. return true to keep that entry, false otherwise.\n * @param {*} [thisArg] - optional. context to bind to callback\n * @returns {object} newly created object with filtered values\n\n```js\nvar filter = require('object-loops/filter')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30,\n  qux: 40,\n}\nvar filteredObj = filter(obj, function (val, key, obj) {\n  return val > 25\n})\nfilteredObj /* Only has entries with vals greater than 25\n{\n  baz: 30,\n  qux: 40\n}\n*/\n```\n\n## find\n\nFind the value of the the object that passes the test implemented by the callback.\n\n* @param {object} [obj] - object to iterate through, not accepted if being used directly on Object.prototype\n* @param {findCallback} callback - function to test each value in the object. return truthy to end the loop and return index, falsey otherwise.\n* @param {*} [thisArg] - optional. context to bind to callback\n* @returns {*} if callback returns true, the loop is ended and the passing `val` is returned (else undefined)\n\n```js\nvar find = require('object-loops/find')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30,\n  qux: 40,\n}\nvar key = find(obj, function (val, key, obj) {\n  return val > 25\n})\nkey // 30\nvar notfound = find(obj, function (val, key, obj) {\n  return val > 100\n})\nnotfound // undefined\n*/\n```\n\n## findKey\n\nFind the key of the the object that passes the test implemented by the callback. Very similar to `Array.prototype.findIndex`\n\n* @param {object} [obj] - object to iterate through, not accepted if being used directly on Object.prototype\n* @param {findKeyCallback} callback - function to test each value in the object. return truthy to end the loop and return index, falsey otherwise.\n* @param {*} [thisArg] - optional. context to bind to callback\n* @returns {*} if callback returns true, the loop is ended and the passing `key` is returned (else undefined)\n\n```js\nvar findKey = require('object-loops/find-key')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30,\n  qux: 40,\n}\nvar key = findKey(obj, function (val, key, obj) {\n  return val > 25\n})\nkey // 'baz'\nvar notfound = findKey(obj, function (val, key, obj) {\n  return val > 100\n})\nnotfound // undefined\n*/\n```\n\n## forEach\n\nExecutes a provided function once per each object value.\n\n * @param {object} [obj] - object to forEach, not accepted if being used directly on Object.prototype\n * @param {function} callback - function that will be invoked once for each key-value pair\n * @param {*} [thisArg] - optional. context to bind to callback\n\n```js\nvar forEach = require('object-loops/for-each')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30\n}\nvar keyConcat = ''\nvar valSum = 0\nforEach(obj, function (val, key, obj) {\n  keyConcat += key\n  valSum += val\n})\nkeyConcat // = 'foobarbaz'\nvalSum    // = 60\n```\n\n## keys\n\nEquivalent to `Object.keys`. Implemented specifically for chain.\n\n```js\nvar chain = require('object-loops/chain')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30\n}\nchain(obj)\n  .keys()\n  .toJSON()\n// ['foo', 'bar', 'baz']\n```\n\n## keysIn\n\nLike to `keys`, but includes enumerable keys from the prototype chain.\n\n```js\nvar keysIn = require('object-loops/keys-in')\n\nfunction Person (name) {\n  this.name = name\n}\nPerson.prototype.getName = function () {\n  return this.name\n}\n\nvar person = new Person('foo')\nkeysIn(obj)\n// ['name', 'getName']\n// for comparison, `keys` would return ['name']\n```\n\n## mapKeys\n\nCreates a new object with the results of calling a provided function on every key in the object.\n\n * @param {object} [obj] - object to map keys, not accepted if being used directly on Object.prototype\n * @param {mapKeysCallback} callback - function that produces the new key for the new mapped object\n * @param {*} [thisArg] - optional. context to bind to callback\n * @returns {object} newly created object with mapped keys\n\n```js\nvar mapKeys = require('object-loops/map-keys')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30\n}\nvar mappedObj = mapKeys(obj, function (key, val, obj) {\n  return key + 'New'\n})\nmappedObj /* Each key is concated w/ 'New'\n{\n  fooNew: 10,\n  barNew: 20,\n  bazNew: 30\n}\n*/\n```\n\n## map\n\nCreates a new object with the results of calling a provided function on every value in the object.\n\n * @param {object} [obj] - object to map values, not accepted if being used directly on Object.prototype\n * @param {function} callback - function that produces the new value for the new, mapped object\n * @param {*} [thisArg] - optional. context to bind to callback\n * @returns {object} newly created object with mapped values\n\n```js\nvar map = require('object-loops/map')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30\n}\nvar mappedObj = map(obj, function (val, key, obj) {\n  return val*2\n})\nmappedObj /* Each val multiplied by 2\n{\n  foo: 20,\n  bar: 40,\n  baz: 60\n}\n*/\n```\n\n## reduce\n\nApplies a function against an accumulator and each value of the object to reduce it to a single value.\n\n * @param {object} [obj] - object to reduce values, not accepted if being used directly on Object.prototype\n * @param {function} callback - function to test each value in the object. return true to keep that entry, false otherwise.\n * @param {*} [initialValue] - optional. object to use as the first argument to the first call of the callback\n * @returns {*} finalValue - final value returned by reduction, or just first val if only one exists.\n\n```js\nvar reduce = require('object-loops/reduce')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30\n}\nvar sum = reduce(obj, function (prevVal, val, key, obj) {\n  return prevVal + val\n})\nsum // 60\n```\n\n## some\n\nTests whether some value in the object passes the test implemented by the callback.\n\n * @function module:object-loops/some\n * @param {object} [obj] - object to iterate through, not accepted if being used directly on Object.prototype\n * @param {someCallback} callback - function to test each value in the object. return truthy to end the loop, falsey otherwise.\n * @param {*} [thisArg] - optional. context to bind to callback\n * @returns {boolean} if callback returns true, the loop is ended and true is returned (else false)\n\n```js\nvar some = require('object-loops/some')\n\nvar obj = {\n  foo: 10,\n  bar: 20,\n  baz: 30,\n  qux: 40,\n}\nvar anyGreaterThan25 = some(obj, function (val, key, obj) {\n  return val > 25\n})\nanyGreaterThan25 // true\n*/\n```\n\n## values\n\nLike to `keys`, but returns direct enumerable values.\n\n```js\nvar values = require('object-loops/values')\n\nfunction Person (name) {\n  this.name = name\n}\nPerson.prototype.getName = function () {\n  return this.name\n}\n\nvar person = new Person('foo')\nvalues(obj)\n// ['foo']\n// for comparison, `valuesIn` would return ['foo', Person.prototype.getName]\n```\n\n## valuesIn\n\nLike to `keys`, but returns direct enumerable values including prototype chain.\n\n```js\nvar valuesIn = require('object-loops/values-in')\n\nfunction Person (name) {\n  this.name = name\n}\nPerson.prototype.getName = function () {\n  return this.name\n}\n\nvar person = new Person('foo')\nvaluesIn(obj)\n// ['foo', Person.prototype.getName]\n```\n\n## License\n\nMIT\n","_attachments":{},"homepage":"https://github.com/tjmehta/object-loops","bugs":{"url":"https://github.com/tjmehta/object-loops/issues"},"license":"MIT"}