I just started studying the JS(3 weeks). I studied for loop and for ...in loop a few days ago and I checked the pros and cons of each of them. However, I tried to change for(...in) loop to for loop but there is an error. Could you check which part do I miss and wrong?
Here is a whole code
const getExamResult = (scores, requiredClasses) => {
let newObj = {};
let scoresKeys = Object.keys(scores);
const scoresValue = Object.values(scores);
// 학점 정보가 담겨 있는 객체
const changeValue = {
'A+': 4.5,
'A': 4,
'B+': 3.5,
'B': 3,
'C+': 2.5,
'C': 2,
'D+': 1.5,
'D' : 1,
'F' : 0
};
for (let i in scoresValue) {
const key = scoresKeys[i];
const value = scoresValue[i];
const newValue = changeValue[value];
newObj[key] = newValue;
}
for (let i = 0; i <scores.length; i++) {
const key = scoresKeys[i];
const value = scoresValue[i];
const newValue = changeValue[value];
newObj[key] = newValue;
}
for (let index in requiredClasses) {
let element = requiredClasses[index];
if (!newObj[element]) {
newObj[element] = 0;
}
}
return newObj;
}
I treid chagne this code
for (let i in scoresValue) {
const key = scoresKeys[i];
const value = scoresValue[i];
const newValue = changeValue[value];
newObj[key] = newValue;
}
to
for (let i=0; i <Object.values(scores); i++){
let key = scoresKeys[i];
let value = scoresValue[i];
const newValue = changeValue[value];
newObj[key] = newValue;
}
Thank you for your help in advance!