Есть массив с объектами, поменять значение ключей в объектах у меня вышло. Но поменять сами ключи в нем не выходит.
Пример ниже меняет значения ключей, как сделать то же действие(перезаписать значение в верхнем регистре) но для самих ключей (name, lastname => NAME, LASTNAME).
var workers = [
{
name : 'maxim',
lastname : 'ivanov'
},
{
name : 'ivan',
lastname: 'borisov'
}
];
function namestoupper(...args) {
for (var i=0; i<args.length; i++) {
if (typeof (args[i].lastname, args[i].name) ==="string") {
args[i].lastname = args[i].lastname.toUpperCase();
args[i].name = args[i].name.toUpperCase();
}
}
}
namestoupper(...workers);
console.log(workers);
Просто для объекта я делал вот так :
var worker = {
name : "andery",
lastname : "petrov",
age : 30,
profession : "programmer"
};
function touppercase(obj) {
for (var prop in obj) {
if (typeof prop === "string") {
obj[prop.toUpperCase()] = obj[prop];
delete obj[prop];
}
}
}
touppercase(worker);
console.log(worker);
Но как сделать для массива с объектами?