WEB/JS
JS 객체
Hard_Try
2021. 1. 4. 22:58
Property Name 주의사항
- 첫 번째 글자는 반드시
문자
,언더바(_)
,달러 기호($)
중 하나로 시작한다.
띄어쓰기
금지
하이픈(-)
금지
객체 데이터 접근
점 표기법
console.log(user.name);
대괄호 표기법
console.log(user[name]); // 1
let propertyName = 'name'; // 2
console.log(user[propertyName]);
console.log(user.course.title); // 3
console.log(user.course['title']); // 4
Key, Value 예시
let myVoca = {
function: '함수',
variable: '변수',
constant: '상수',
local: '지역의',
global: '전반적인'
}
console.log(myVoca);
console.log(myVoca.local);
console.log(myVoca.constant);
console.log(myVoca.function);
객체와 메소드 예시
let myVoca = {
addVoca: function(word, mean) {
myVoca[word] = mean;
},
deleteVoca: function(word) {
delete myVoca[word];
},
printVoca: function(word) {
console.log(`"${word}"의 뜻은 "${myVoca[word]}"입니다.`);
}
}
// addVoca 메소드 테스트 코드
myVoca.addVoca('parameter', '매개 변수');
myVoca.addVoca('element', '요소');
myVoca.addVoca('property', '속성');
console.log(myVoca);
// deleteVoca 메소드 테스트 코드
myVoca.deleteVoca('parameter');
myVoca.deleteVoca('element');
console.log(myVoca);
// printVoca 메소드 테스트 코드
myVoca.printVoca('property');
객체 for.. in.. 문 예시
let hyesoonScore = {
'데이터 모델링의 이해': 10,
'데이터 모델과 성능': 8,
'SQL 기본': 22,
'SQL 활용': 18,
'SQL 최적화 기본 원리': 20
};
let minsoonScore = {
'데이터 모델링의 이해': 14,
'데이터 모델과 성능': 8,
'SQL 기본': 12,
'SQL 활용': 4,
'SQL 최적화 기본 원리': 16
};
function passChecker(scoreObject) {
let result = 0;
// 여기에 코드를 작성해 주세요.
for (let subject in scoreObject) {
result += scoreObject[subject];
}
if (result >= 60) {
console.log('축하합니다! 합격입니다!');
} else {
console.log('아쉽지만 불합격입니다..');
}
}
passChecker(hyesoonScore);
passChecker(minsoonScore);
Date 객체
Date를 나타낼 수 있는 다양한 방법
let date1 = new Date('12/15/1999 05:25:30');
let date2 = new Date('December 15, 1999 05:25:30');
let date3 = new Date('Dec 15 1999 05:25:30');
Date 활용 예시
let today = new Date(2112, 8, 24);
let jaeSangStart = new Date(2109, 7, 1);
function workDayCalc(startDate) {
// 여기에 코드를 작성해 주세요.
timeDiff = today - startDate;
console.log(`오늘은 입사한 지 ${timeDiff / 1000 / 60 / 60 / 24 + 1}일째 되는 날 입니다.`)
}
workDayCalc(jaeSangStart);
Uploaded by Notion2Tistory v1.1.0