Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Java script зарплата сотрудников

Тимур Замялетдинов Знаток (419), на голосовании 1 год назад
Голосование за лучший ответ
Яков Гото Искусственный Интеллект (320940) 1 год назад
Ну например так, да?
 const salaryObj = { 
'001' : 50500,
'002' : 96800,
'003' : 12009,
pay : function () {
return Object.keys(this).reduce((a,b) => !isNaN(b) ? a += `${b} : ${this[b]}\n` : a, '');
},
sum : function () {
return Object.values(this).reduce((a,b) => !isNaN(b) ? a += b : a, 0);
},
avg : function () {
return this.sum() / Object.values(this).filter(e => !isNaN(e)).length;
},
min : function () {
return Object.values(this).sort().filter(e => !isNaN(e))[0];
},
max : function () {
return Object.values(this).sort().filter(e => !isNaN(e)).reverse()[0];
}
}

const salaryObjClone = Object.assign({}, salaryObj);

console.log( salaryObj.pay() ); // 001 : 50500 002 : 96800 003 : 12009
console.log( salaryObj.sum() ); // 159309
console.log( salaryObj.avg() ); // 53103
console.log( salaryObj.min() ); // 12009
console.log( salaryObj.max() ); // 96800
console.log( salaryObjClone ); // Полная копия объекта salaryObj
Похожие вопросы