
Company News
Socket Named Top Sales Organization by RepVue
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.
each-props
Advanced tools
Processes each properties of an object deeply.
To install from npm:
$ npm i each-props --save
Apply a function to all (non plain object) properties.
const eachProps = require('each-props');
var obj = { a: 1, b: { c: 'CCC', d: { e: 'EEE' } } };
eachProps(obj, function (value, keyChain, nodeInfo) {
if (keyChain === 'a') {
nodeInfo.parent['a'] = value * 2;
} else if (keyChain === 'b.c') {
nodeInfo.parent['c'] = value.toLowerCase();
} else if (keyChain === 'b.d') {
return true; // stop to dig
} else if (keyChain === 'b.d.e') {
nodeInfo.parent['e'] = value.toLowerCase();
}
});
console.log(obj);
// => { a: 2, b: { c: 'ccc', d: { e: 'EEE' } } };
Executes the fn function for all properties.
| Parameter | Type | Description |
|---|---|---|
| obj | object | A plain object to be treated. |
| fn | function | A function to operate each properties. |
| opts | object | An object to pass any data to each properties. |
API of fn function
This function is applied to all properties in an object.
| Parameter | Type | Description |
|---|---|---|
| value | any | A property value. |
| keyChain | string | A string concatenating the hierarchical keys with dots. |
| nodeInfo | object | An object which contains node informations (See below). |
True, if stops digging child properties.
Type: boolean
| Properties | Type | Description |
|---|---|---|
| name | string | The property name of this node. |
| index | number | The index of the property among the sibling properties. |
| count | number | The count of the sibling properties. |
| depth | number | The depth of the property. |
| parent | object | The parent node of the property. |
| sort | function | A sort function which orders the child properties. This function is inherited from opts, if be specified. |
... and any properties inherited from opts.
| Properties | Type | Description |
|---|---|---|
| sort | function | A sort function which orders the same level properties. (Optional) |
... and any properties you want to pass to each node.
MIT
FAQs
Processes each properties of an object deeply.
The npm package each-props receives a total of 1,447,018 weekly downloads. As such, each-props popularity was classified as popular.
We found that each-props demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.

Security News
NIST will stop enriching most CVEs under a new risk-based model, narrowing the NVD's scope as vulnerability submissions continue to surge.

Company News
/Security News
Socket is an initial recipient of OpenAI's Cybersecurity Grant Program, which commits $10M in API credits to defenders securing open source software.