JSFiddle - React, Tailwind, and code Playground
by Sergei Sokolov
JavaScript
/**
* для вопроса https://qna.habr.com/q/933625
* Как сделать функция,которая меняет регистр ключа объекта?
*/
const keysToUpper = (src) => {
for (let prop in src) {
const upper = prop.toUpperCase();
if (prop !== upper) {
src[upper] = src[prop];
delete src[prop];
}
if ('object' === typeof src[upper]) {
keysToUpper(src[upper]);
}
}
}
const test = {
"KEY0": "keep it",
"key1": "value",
"key2": ["v", "2", 3, 4],
"key3": {
"subKey1": "aa0",
"subKey2": ["v", 2, 3, ],
"subKey3": {
"deepWeb": "Tor",
"darkWeb": "i2p",
"dullWeb": "cheburnet",
},
},
"KEY4": "no change",
}
keysToUpper(test);
document.querySelector('pre').textContent = JSON.stringify(test, null, 2);