데이터 타입
구분 | 데이터 타입 | 설명 |
원시타입 | 숫자number타입 | 숫자, 정수와 실수 구분없이 하나의 숫자 타입만 존재 |
문자열string 타입 | 문자열 | |
불리언boolean 타입 | 논리적 참true, 거짓false | |
undefined 타입 | var 키워드로 선언된 변수에 암묵적으로 할당되는 값 | |
null 타입 | 값이 없다는 걸 의도적으로 명시할 때 사용하는 값 | |
심벌symbol 타입 | ES6에서 추가된 7번째 타입 | |
객체타입 | 객체, 함수, 배열 등 |
! 자바스크립트는 객체 기반의 언어이며, 자바스크립트를 이루고 있는 거의 모든 것이 객체라는 것이다!
원시 타입은 단 하나의 값만 나타내지만 객체 타입은 다양한 타입의 값을 하나의 단위로 구성한 복합적인 자료구조다. 또한 원시타입의 값, 즉 원시 값은 변경 불가능한 값이지만 객체 타입의 값, 즉 객체는 변경 가능한 값이다.
2. 객체 속성 접근(Dot Notation)
Assignment
- dotNotation 함수를 작성해주세요.
- 마침표 연산자(.)를 사용하여 객체의 property 값에 접근해주세요.
- 변수 hatValue의 값으로 "hat" property의 value값을 할당해주세요.
- 변수 shirtValue의 값으로 "shirt" property의 value값을 할당해주세요.
문제
function dotNotation() {
// 아래의 코드는 수정하지 마세요.
let testObj = {
"hat": "ballcap",
"shirt": "jersey",
"shoes": "cleats"
};
// 아래의 코드를 수정해주세요.
let hatValue = testObj;
let shirtValue = testObj;
// 아래의 코드는 수정하지 마세요.
return hatValue + ' ' + shirtValue;
}
풀기
function dotNotation() {
let testObj = {
"hat": "ballcap",
"shirt": "jersey",
"shoes": "cleats"
};
let hatValue = testObj.hat;
let shirtValue = testObj.shirt;
return hatValue + ' ' + shirtValue;
}
console.log(dotNotation())
//'ballcap jersey'
3. 객체 속성 접근(Bracket Notation)
Assignment
- bracketNotation 함수를 작성해주세요.
- 대괄호([])를 사용하여 객체의 property 값에 접근해주세요.
- 변수 entreeValue의 값으로 "an entree" property의 value값을 할당해주세요.
- 변수 drinkValue의 값으로 "the drink" property의 value값을 할당해주세요.
문제
function bracketNotation() {
// 아래의 코드는 수정하지 마세요.
let testObj = {
"an entree": "hamburger",
"my side": "veggies",
"the drink": "water"
};
// 아래의 코드를 수정해주세요.
let entreeValue = testObj;
let drinkValue = testObj;
// 아래의 코드는 수정하지 마세요.
return entreeValue + ' ' + drinkValue;
}
풀기
function bracketNotation() {
let testObj = {
"an entree": "hamburger",
"my side": "veggies",
"the drink": "water"
};
let entreeValue = testObj['an entree'];
let drinkValue = testObj['the drink'];
return entreeValue + ' ' + drinkValue;
}
console.log(bracketNotation())
4. 변수를 사용한 객체 속성 접근
Assignment
- objectVariables 함수를 작성해주세요.
- 16을 값으로 하는 playerNumber 변수를 선언해주세요.
- 대괄호를 사용해 testObj의 playerNumber 프로퍼티에 접근하여 player 변수의 값으로 해당 번호의 선수가 올 수 있게 해주세요.
문제
function objectVariables() {
// 아래의 코드는 수정하지 마세요.
let testObj = {
12: "Namath",
16: "Montana",
19: "Unitas"
};
// 아래의 코드를 수정해주세요.
let playerNumber;
let player = testObj;
return player;
}
풀기
function objectVariables() {
let testObj = {
12: "Namath",
16: "Montana",
19: "Unitas"
};
let playerNumber = 16
let player = testObj[playerNumber]
return player;
}
console.log(objectVariables());
복기
let player = testObj[playerNumber]
위 코드에 따음표를 ['playerNumber']를 넣어야할지 고민했었지만 playerNumber는 문자열이 아닌 선언된 변수이기 때문에 ''가 없이 접근 가능하다.
'Javascript' 카테고리의 다른 글
[개념 문제] 09.object - 8. 객체 안의 객체 접근/9. 객체 안의 배열 접근 (0) | 2022.05.08 |
---|---|
[개념 문제] 09.object - 5. 객체 수정/ 6. 객체 속성 추가/ 7. 객체 속성 삭제 (0) | 2022.05.07 |
[개념 문제] 09.object - 0. 왜 객체를 써야할까요?/1. 객체 생성하기 (0) | 2022.05.05 |
[개념 문제] 08.for - 7. getAllLetters/ 8.심화 - 인사봇 (0) | 2022.05.05 |
[개념 문제] 08.for - 5. Count Backwards With a For Loop/6. Iterate Through an Array with a For Loop (0) | 2022.05.05 |