I\'ve got a variable I\'m storing that will dictate what fields to exclude from a query:
excludeFields = {
Contact: {
Address: 0,
Phone: 0
}
}
>
I use a function pretty much similar to the accepted answer
function convertJsonToDot(obj, parent = [], keyValue = {}) {
for (let key in obj) {
let keyPath = [...parent, key];
if (obj[key]!== null && typeof obj[key] === 'object') {
Object.assign(keyValue, convertJsonToDot(obj[key], keyPath, keyValue));
} else {
keyValue[keyPath.join('.')] = obj[key];
}
}
return keyValue;
}
Here, I do an additional check 'obj[key] !== null' because unfortunately null is also of type 'object'.
I actually wanted to add this a comment to the accepted answer but couldn't because of not enough reputation.