✏️ 구조 분해 할당
let user = {
name: "John",
years: 30
};
➡️
let { name, year : age, isAdmin = false} = user
굿~~!
✏️ 최대 급여 계산하기
let salaries = {
"John": 100,
"Pete": 300,
"Mary": 250
};
가장 많은 급여를 받는 사람의 이름을 반환해주는 함수 topSalary(salaries)를 만들어봅시다. 조건은 아래와 같습니다.
salaries가 비어있으면 함수는 null을 반환해야 합니다.
최대 급여를 받는 사람이 여러 명이라면 그 중 아무나 한 명 반환하면 됩니다.
힌트: Object.entries와 구조 분해를 사용해 키-값 쌍을 순회하는 방식을 사용해보세요.
➡️
for (let [key, value] of Object.entries(salaries)) {
console.log(value);
}
// 키 값을 구조분해 했는데, 다음에 어떻게 해야할지??
function topSalary(salaries) {
let max = 0;
let maxName = null;
for(const [name, salary] of Object.entries(salaries)) {
if (max < salary) {
max = salary;
maxName = name;
}
}
return maxName;
}
// 배열을 순회하면서, max의 값이 크면 max에 저장해서 모든 값을 비교할 수 있게하였다.
// 가장 큰 값의 name을 추출해서 리턴한다!
📖 풀어보기
✏️날짜 생성하기
let date = new Date(2012, 1, 20, 3, 12);
✏️ 요일 보여주기
날짜를 입력하면 ‘MO’, ‘TU’, ‘WE’, ‘TH’, ‘FR’, ‘SA’, ‘SU’ 형식으로 요일을 보여주는 함수 getWeekDay(date)를 만들어보세요.
예시:
let date = new Date(2012, 0, 3); // 2012년 1월 3일
alert( getWeekDay(date) ); // "TU"가 출력되어야 합니다.
➡️
let date = new Date(2012, 0, 3); // 2012년 1월 3일
function getWeekDay(date){
let day= ['SU','MO', 'TU', 'WE','TH', 'FR', 'SA']
return day[date.getDay()]
}
alert( getWeekDay(date) );
// 굿!!
✏️ 유럽 기준 달력
-유럽국가의 달력은 월요일부터 시작합니다(월요일-1, 화요일-2, … 일요일-7). ‘유럽’ 기준 숫자를 반환해주는 함수 getLocalDay(date)를 만들어보세요.
let date = new Date(2019, 11, 5); // 2019년 11월 5일
alert( getLocalDay(date) ); // 금요일이므로, 5가 출력되어야 함
➡️
function getLocalDay (date) {
return date.getDay(date) + 1
}
// 굿!
💬 오늘의 느낀점
구조분해할당이 중요하다고 생각했는데, 자주 쓰면 좋을 거 같다.
맨날 활용을 못 했던거 같다.
date()
를 아직 쓸 일이 없었는데, 미리 알아둘 수 있어서 좋았다!!
문제는 내일 마저 풀기!!
++
🗣 강사님 feedback!