Fix typo to fit the context Fix typo add space Fix small typo Fix small typo Fix typo Fix typo Fix typo Fix typo Fix typo Fix typo Fix typo Update tail.md Fix typo Fix small typo Fix typo Fix typo Fix typo Fix typo Fix small typo Fix typo Fix small typo Fix typo Fix typo Fix typo Fix typo Fix typo Fix typo Fix typo Fix typo Fix typo
24 lines
753 B
Markdown
24 lines
753 B
Markdown
### cleanObj
|
|
|
|
Removes any properties except the ones specified from a JSON object.
|
|
|
|
Use `Object.keys()` method to loop over given JSON object and deleting keys that are not `include`d in given array.
|
|
Also if you give it a special key (`childIndicator`) it will search deeply inside it to apply function to inner objects too.
|
|
|
|
```js
|
|
const cleanObj = (obj, keysToKeep = [], childIndicator) => {
|
|
Object.keys(obj).forEach(key => {
|
|
if (key === childIndicator) {
|
|
cleanObj(obj[key], keysToKeep, childIndicator);
|
|
} else if (!keysToKeep.includes(key)) {
|
|
delete obj[key];
|
|
}
|
|
})
|
|
}
|
|
/*
|
|
const testObj = {a: 1, b: 2, children: {a: 1, b: 2}}
|
|
cleanObj(testObj, ["a"],"children")
|
|
console.log(testObj)// { a: 1, children : { a: 1}}
|
|
*/
|
|
```
|