JavaScript는 7가지 기본 유형을 제공다른 모든 것은 객체라고 함매우 큰 정수를 제외한 모든 숫자값(정수 및 부동 소수점)에 사용JavaScript는 부동 소수점 숫자와 정수를 구분하지 않음기본(2진수, 8진수, 10진수 또는 16진수) 또는 지수 접미사를 나타
let, const 및 var의 세 가지 키워드 중 하나를 사용하여 선언let을 사용하면 블록 레벨 변수를 선언변수가 선언된 블록에서 사용할 수 있음const는 값이 변경되지 않을 변수를 선언할 수 있게 함변수가 선언된 블록에서 사용할 수 있음재할당할 수 없음객체인 경
elif가 없으며, else if는 단일 if 문으로 구성된 else 분기에 불과C와 Java의 반복문과 같음iterables(특히 배열)를 반복하는 for...of객체의 모든 enumerable 속성을 방문하는 for...in
JavaScript 객체는 간단히 이름-값 쌍(name-value pairs)의 모임아래와 비슷 \- Python의 Dictionaries \- Java의 HashMapsJavaScript의 객체는 해시(hashes)JavaScript의 객체는 모양이 고정되어 있지
특별한 타입의 객체배열은 일반적으로 배열 리터럴로 생성임의의 숫자 인덱스를 포함하여 배열에 속성을 할당할 수 있음특정 인덱스를 설정할 때 length가 자동으로 업데이트 됨중간에 비어있는 슬롯이 있기 때문이며 엔진이 배열에서 해시 테이블로 배열을 최적화하지 않기 때문존
함수 (Functions) 0개 이상의 이름이 있는 매개변수를 가질 수 있음 함수에 지역적인 변수를 선언할 수 있음 반환 문이 없으면 (혹은 값이 없는 반환이 사용되면), JavaScript는 undefined을 반환 매개변수로 지정된 것보다 많거나 적은 변수를 사용해
JavaScript 클래스는 new 연산자로 인스턴스화해야 하는 함수일 뿐정적 속성은 static을 추가하여 생성
작업이 완료될 때까지 기다리지 않고 잠재적으로 오래 실행되는 작업을 시작하여 해당 작업이 실행되는 동안에도 다른 이벤트에 응답할 수 있게 하는 기술JavaScript는 본질적으로 단일 스레드병렬화가 없고, 동시성만 가능비동기 프로그래밍은 이벤트 루프에 의해 구동 \-