간단한 추상화 연습1과 똑같은 결과를 도출한다. 특이한 점은 파라미터로 객체가 들어가는 함수라는 점이다. console에 찍어보면 깔끔하게 나온다. 코드를 보자.
// 객체를 선언합니다.
const students = []
students.push({ 이름: '구름', 국어: 87, 영어: 98, 수학: 88, 과학: 90})
students.push({ 이름: '별이', 국어: 92, 영어: 98, 수학: 96, 과학: 88})
students.push({ 이름: '겨울', 국어: 76, 영어: 96, 수학: 94, 과학: 86})
students.push({ 이름: '바다', 국어: 98, 영어: 52, 수학: 98, 과학: 92})
// 객체를 처리하는 함수를 선언합니다.
function getSumOf (student) {
return student.국어 + student.영어 + student.수학 + student.과학
} // 파라미터에 들어간 객체의 국어 속성의 값 + 영어 속성의 값 + 수학 속성의 값 + 과학 속성의 값을 return
function getAverageOf (student) {
return getSumOf(student) / 4
} // 위의 본 함수의 파라미터를 getSumOf함수에 똑같이 넣어 나온 값을 4로 나눔.
// 출력합니다.
let output = '이름\t총점\t평균\n'
for (const s of students) { //s 에 students 속 객체가 하나씩 돌아가면서 들어감.
output += `${s.이름}\t${getSumOf(s)}점\t${getAverageOf(s)}점\n` //객체를 파라미터로 받고있음.
}
console.log(output)
'자바스크립트 리뷰' 카테고리의 다른 글
함수로 객체 찍어내기(판화 찍어내듯이) [혼공자 9-1-5] (0) | 2023.04.05 |
---|---|
배열속 객체에 대한 메소드 만들기 [혼공자 9-1-4] (0) | 2023.04.05 |
간단한 추상화 연습: 성적 데이터 관리 코드[혼공자 9-1-2] (0) | 2023.04.05 |
혼공자 콜백함수 (0) | 2023.04.03 |
혼공자 chapter 05-2. filter() 메서드 (0) | 2023.04.03 |