러닝 자바스크립트 3장 정리

변수
기존의 var 와 더불어 let 키워드가 새로 생겼다.
let currentTempC = 22;
이 문은 currentTemp 변수를 선언하고 초깃값을 할당하는 두가지 일을 한다.
currentTempC의 값은 언제든지 바꿀 수 있다.
변수를 선언할 때 꼭 초깃값을 지정해야 하는 것은 아니다. 초깃값을 할당하지 않으면 임시로 'undefined'가 할당된다.
let currentTempC; 은 let currentTempC = undefined; 와 같다.
또한 let 문 하나에서 변수를 여러 개 선언하는것도 가능하다.
let targetTempC, room1 = "conference_room_a", room2 = "lobby";
변수 3개를 선언했는데 targetTempC는 값을 할당하지 않았으므로 undefined를 받는다.
상수
상수는 ES6에서 새로 생겼는데 변수와 마찬가지로 값을 할당받을 수 있다. 하지만 한 번 할당한 값을 바꾸는것은 불가능하다.
const ROOM_TEMP_C = 21.5, MAX_TEMP_C = 30;
상수 역시 여러개를 선언할 수 있고 보통 대문자와 밑줄만을 사용한다.
리터럴
리터럴이란 값을 프로그램 안에서 직접 지정한다는 의미로 리터럴은 값을 만드는 방법인 것이다. 리터럴과 식별자의 차이를 이해하는것이 가장 중요하다.
let room1 = "conference_room_a";
- " " (따옴표) 안이 리터럴이다. let room1에게 conference_room_a 라는 값을 준 것이다.
let currentRoom = room1;
- currentRoom의 값은 room1의 값과 같다는 뜻이다.
currentRoom = conference_room_a;
- 에러가 발생한다. conference_room_a란 식별자는 존재하지 않기때문이다.
객체
const obj = {};
객체의 콘텐츠는 프로퍼티, 멤버라고 부르며 프로퍼티는 이름(키)과 값으로 구성되어있다. 프로퍼티의 이름은 반드시 문자열 또는 심볼이어야 하며 값은 어떤 타입이든 상관없다. 다른 객체여도 가능하다.
obj.color = "yellow";
obj ["not an identifier"] = 3;
obj ["not an identifier"]; //3
obj ["color"]; //yellow
프로퍼티의 이름에 유효한 식별자를 써야 멤버 접근 연산자 ( . ) 을 사용할 수 있다. 프로퍼티 이름에 유효한 식별자가 아닌 이름을 쓴다면 계산된 멤버 접근 연산자 ( [] )를 사용해야한다. 프로퍼티 이름이 유효한 식별자여도 대괄호로 접근가능하다.
const sam = {
name : 'sam',
classification: {
kingdom : 'Anamalia',
family : 'Feildae',
subfamily : 'Felinae',
species : 'catus'}
};
sam의 classification 프로퍼티는 그 자체로 객체가 된다. 여기서 sam의 family에 접근하는 방법에는 여러가지가 있다.
sam.classification.family;
sam["classification"].family;
sam.classification["family"];
sam["classification"]["family"]
모두 같은 곳을 가리킨다.
배열
자바스크립트의 배열은 몇가지의 특징을 가지고 있다.
- 배열의 크기는 고정되지 않는다. (언제든 요소를 추가하거나 제거할 수 있음)
- 요소의 데이터 타입을 가리지 않는다. (문자열만 쓸 수 있는 배열, 숫자만 쓸 수 있는 배열 구분이 없음)
- 배열 요소는 0으로 시작한다.
const a1 = [1, 'two', 3, null];
- 여러가지 타입으로 구성된 배열
const a2 = [
"what the hammer? what the chain?",
"In what furnace was thy brain?"];
- 여러 줄로 정의한 배열
const a3 = [
{ name : "Ruby", hardness: 9 }.
{ name : "Diamond", hardness: 10}
];
- 객체가 들어있는 배열
const a4 = [
[ 1, 3, 5 ]
[ 2, 4, 6 ]
];
- 배열이 들어있는 배열
자바스크립트는 위와 같이 여러 형식의 배열형태가 가능하다. 이떄 배열 리터럴을 대괄호 안에 배열 요소를 쉼표로 구분해서 써야한다.
'Learning JAVA script' 카테고리의 다른 글
| 러닝 자바스크립트 8장 정리 (0) | 2019.11.15 |
|---|---|
| 러닝 자바스크립트 7장 정리 (0) | 2019.10.13 |
| 러닝 자바스크립트 6장 정리 (0) | 2019.10.11 |
| 러닝 자바스크립트 5장 정리 (0) | 2019.10.11 |
| 러닝 자바스크립트 4장 정리 (0) | 2019.10.09 |
