Javascript 는 그 형태가 Java 와 비슷한 형태를 띄고 있으면서, 하는 일은 완전히 다른 녀석입니다. 자바의 이해를 하고있다고 해서 Javascript 를 이해하는 것도 아니고, C 언어를 이해하고 있다고 해서 C#의 이해를 하고 있는 것이 아닌 것처럼, 이 둘의 관계는 정말 다릅니다.
작성자는 뭘 해야하는지 모르기 때문에 이거저거 다 해보고 있는데요, 오늘은 For..in...의 복습을 해보려고 합니다
자바스트립트의 Obj 는, 그 값안에 Key 값과 Value를 지니고 있는데요. 이 For...in.. 의 동작을통해 안에 있는걸 반복적으로 꺼내 올 수있을 것입니다.
점수가 총점 60점이 넘지 않으면 불합격을 출력하는 코드를 봅시다.
내가 푼 풀이 방식
let hyesoonScore = {
'데이터 모델링의 이해': 10,
'데이터 모델과 성능': 8,
'SQL 기본': 22,
'SQL 활용': 18,
'SQL 최적화 기본 원리': 20,
};
let minsoonScore = {
'데이터 모델링의 이해': 14,
'데이터 모델과 성능': 8,
'SQL 기본': 12,
'SQL 활용': 4,
'SQL 최적화 기본 원리': 16,
};
function passChecker(scoreObject) {
let score = 0; //초기 값을 지정해주는 변수를 정해주고
for (let key in scoreObject){
score+= scoreObject[key];
} //obj 안에 있는 녀석들을 모두 꺼내 줍니다
if (score > 60) {
console.log("축하합니다! 합격입니다!");
} else {
console.log("아쉽지만 불합격입니다..");
}
}
passChecker(hyesoonScore);
passChecker(minsoonScore);
코드잇 풀이
let hyesoonScore = {
'데이터 모델링의 이해': 10,
'데이터 모델과 성능': 8,
'SQL 기본': 22,
'SQL 활용': 18,
'SQL 최적화 기본 원리': 20,
};
let minsoonScore = {
'데이터 모델링의 이해': 14,
'데이터 모델과 성능': 8,
'SQL 기본': 12,
'SQL 활용': 4,
'SQL 최적화 기본 원리': 16,
};
function passChecker(scoreObject) {
// 여기에 코드를 작성해 주세요.
let totalScore = 0;
for (let subject in scoreObject) {
totalScore += scoreObject[subject];
}
if (totalScore >= 60) {
console.log('축하합니다! 합격입니다!');
} else {
console.log('아쉽지만 불합격입니다..');
}
}
passChecker(hyesoonScore);
passChecker(minsoonScore);
변수의 이름만 다르지 접근 방식은 동일했다.