personArray의 나이 평균을 구해주는 Arrow Function을 작성해봅시다.
const personArray = [
{ name: "John Doe", age: 20 },
{ name: "Jane Doe", age: 19 },
{ name: "Fred Doe", age: 32 },
{ name: "Chris Doe", age: 45 },
{ name: "Layla Doe", age: 37 },
];
//
const getAgeAverage = (personArray) => {};
console.log(getAgeAverage(personArray));
// 일반 익명 함수 표현식
const sum = function(a, b) {
return a + b;
};
// 화살표 함수 표현식1
const sum = (a, b) => {
return a + b;
};
// 화살표 함수 표현식2
const sum = (a, b) => a + b;
// 화살표 함수 표현식3
const hello = a => {
return a;
};
hello('hi'); // hi
const sum = (a, b) => a + b;
const getAgeAverage = (people.age) => { return sum(people.age)/(personArray.length) };
// 하다가 모르겠어서 쓰다말았다...
const personArray = [
{ name: "John Doe", age: 20 },
{ name: "Jane Doe", age: 19 },
{ name: "Fred Doe", age: 32 },
{ name: "Chris Doe", age: 45 },
{ name: "Layla Doe", age: 37 },
];
const getAgeAverage = () => {
let sum = 0;
for (let person of personArray) {
sum = sum + person["age"];
}
const average = sum / personArray.length;
return average;
}
console.log(getAgeAverage(personArray)); // 30.6
생년월일을 입력받아 만 나이 계산하는 함수 작성해보자
function getAge(dateOfBirth) {
// 코드 작성
}
console.log(getAge('1993-12-14 16:27:00'));
// Print: 29
// Date() 생성자
const date1 = new Date('December 17, 1995 03:24:00');
// Sun Dec 17 1995 03:24:00 GMT...
// Date.prototype.getFullYear()
// 주어진 날짜의 현지 시간 기준 연도를 반환
const moonLanding = new Date('July 20, 69 00:20:18');
console.log(moonLanding.getFullYear());
// expected output: 1969
// Date.prototype.getMonth()
// Date 객체의 월 값을 현지 시간에 맞춰 반환합니다. 월은 0부터 시작함.
const moonLanding = new Date('July 20, 69 00:20:18');
console.log(moonLanding.getMonth()); // (January gives 0)
// expected output: 6
// Date.prototype.getDate()
// 주어진 날짜의 현지 시간 기준 일을 반환
const birthday = new Date('August 19, 1975 23:15:30');
const date1 = birthday.getDate();
console.log(date1);
// expected output: 19
function getAge(dateOfBirth) {
const CurDate = new Date(Date())
const CurYear = CurDate.getFullYear()
const CurMonth = CurDate.getMonth() + 1
const Curday = CurDate.getDate()
let InputDate = new Date(dateOfBirth);
let CurAge = CurYear - InputDate.getFullYear();
if ( CurMonth > InputDate.getMonth() + 1 ) {
CurAge = CurAge
} else if ( (CurMonth == InputDate.getMonth() + 1 )
&& ( Curday >= InputDate.getDate() ) ) {
CurAge = CurAge
} else {
CurAge = CurAge - 1
}
if (CurAge >= 0) {
console.log(CurAge)
} else {
console.log('아직 태어나지 않았습니다.')
}
return
}
console.log(getAge('1993-12-14 16:27:00'));
// Print: 29
function getAge(dateOfBirth) {
const now = new Date();
const birth = new Date(dateOfBirth);
const age = now.getFullYear() - birth.getFullYear();
const isBirthdayOver =
now.getMonth() - birth.getMonth() >= 0 &&
now.getDate() - birth.getDate() >= 0;
if (isBirthdayOver) {
return age;
}
return age - 1;
}
20세 미만 출력하는 함수 작성해보자
function getChildren(persons) {
// 코드 작성
}
const allPersons = [
{ name: "John Kim", age: 10 },
{ name: "Jane Doe", age: 20 },
{ name: "Fred Kang", age: 13 },
{ name: "Chris Doe", age: 39 },
{ name: "Layla Park", age: 19 },
];
console.log(getChildren(allPersons));
// Print: [
// {"name": "John Kim", "age": 10},
// {"name": "Fred Kang", "age": 13},
// {"name": "Layla Park", "age": 19},
// ]
// Array.prototype.filter()
// 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환
const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
const result = words.filter(word => word.length > 6);
console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]
function getChildren(persons) {
for (const person of persons) {
if ( person.age < 20 ) {
console.log(person);
} else {
continue
}
}
return
}
const allPersons = [
{ name: "John Kim", age: 10 },
{ name: "Jane Doe", age: 20 },
{ name: "Fred Kang", age: 13 },
{ name: "Chris Doe", age: 39 },
{ name: "Layla Park", age: 19 },
];
console.log(getChildren(allPersons));
// Print:
// { name: 'John Kim', age: 10 }
// { name: 'Fred Kang', age: 13 }
// { name: 'Layla Park', age: 19 }
function getChildren(persons) {
return persons.filter((person) => person.age < 20);
}