변수, 식별자, 호이스팅
값과 표현식 문
숫자, 문자열, 불리언, undefined, null, 심벌, 객체 타입으로 총 7개의 타입을 제공
연산자는 하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리 , 타입 등을 수행해 하나의 값을 만들어 낸다
블록문, 조건문, 반복문, break문, continue문
명시적 타입 변환, 암묵적 타입 변환, 단축 평가
변경가능한 객체
원시값은 변경 불가능한 객체이며 재할당으로만 가능하고, 객체는 변경가능하며 재할당 없이 생성, 추가, 삭제가 가능하다
함수는 객체이먀, 함수 선언문, 홤수 표현식 및 함수 호이스팅, function 생성자 함수, 화살표 함수 가 존재하며, 함수는 또한 즉시 실행함수, 재귀 함수, 중첩함수, 콜백함수, 순수 함수 및 비순수 함수 또한 존재
스코프는 유효범위
전역변수의 문제 및 해결방법
var는 변수 호이스팅에 의해 선언단계와 초기화 단계가 실행되지만, let & const는 호이스팅이 작동하지않아, 할당문에 접근하기 전까지 참조할 수 없다.
자바스크립트 엔진은 프로퍼티를 생성할 때, 프로퍼티의 상태를 나타내는 프로퍼티 어트리뷰트를 기본값으로 자동정의한다
new 연산자와 함께 Object 생성자 함수를 호출하면 빈 객체를 생성하여 반환한다
무명의 리터럴로 생성할 수 있음. 런타임에 생성이 가능변수나 자료구조(객체, 배열 등)에 저장 가능함수의 매개변수에 전달함수의 반환값으로 사용
모든 객체는 하나의 프로토타입을 가지고 있다.
암묵적 전역 객체의 생성 방지를 위한 strict mode
1. 자바스크립트 객체의 분류 표준 빌트인 객체 호스트 객체 사용자 정의 객체 2. 표준 빌트인 객체 Object, String, Number, Symbol, Date, Math... 3. 원시값과 래퍼 객체 > 원시값은 객체가 아니므로 프로퍼티나 메서드를 가질 수 없다 하지만, 이에 대한 접근 방식을 객체로 진행하면 가 임시로 생성된다 4. 전역 ...
1. this 키워드 > 객체는 상태를 나타내는 프로퍼티와 동작을 나타내는 메서드를 하나로 묶은 가 자신의 객체의 프로퍼티를 참조하려면 자신이 속한 객체를 가리키는 식별자를 참조할 수 있어야 함 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수 식별자와 값을 연결 함수 호출 방식에 의해 동적으로 결정 2. 함수 호출 방식...
실행 컨텍스트는 자바스크립트의 동작원리를 담고 있는 핵심 개념이다
내부 함수로부터 외부함수에의 접근 권한을 주는 함수를 클로저
class 키워드를 사용하여 정의되는 클래스는 값처럼 사용할 수 있는 일급 객체이다
ES6 이전의 모든 함수는 일반 함수로서 호출할 수 있는 것은 물론 생성자 함수로서 호출할 수 있다.
배열이 가지고 있는 값을 요소라고 하며, 자바스크립트에서 값으로 인정되는 모든 것은 배열의 요소가 될 수 있다하지만, 자바스크립트에서 배열이라는 타입은 존재하지 않는다.배열은 객체 타입이다
Number 생성자 함수 및 프로퍼티 및 메서드
표준 빌트인 객체인 Math는 수학적인 상수와 함수를 위한 프로퍼티 및 메서드를 제공
표준 빌트인 객체인 String은 원시 타입인 문자열을 다룬다
Documnet Object Model인 DOM은HTML 문서의 계층적 구조와 정보를 표현하며 이를 제어할 수 있는 API
이터러블
...은 하나로 뭉쳐있는 여러 값들의 집합을 펼쳐서 개별적인 값들의 목록으로 만드는것 대상 -> Array String Map Set DOM 컬렉션 (HTML Collection, NodeList) 스프레드 문법의 결과는 값이 1. 배열 인수 목록에서 사용 2.
구조화된 배열과 같은 이터러블과 객체를 destructuring 비구조화하여 1개 이상의 변수에 개별적으로 할당하는 방법
파싱과 렌더링
1. 이벤트 드리븐 프로그래밍 event handler 이벤트가 발생했을때, 에 의해 호출될 함수 이벤트 핸들러 등록 이벤트가 발생했을때, 브라우저에게 이벤트 핸들러의 호출을 위임하는 것 >이벤트 드리븐 프로그래밍이란? 이벤트와 그에 대응하는 이벤트 핸들러를 통해
1. 동기 처리와 비동기 처리 > 함수를 호출하면 함수 코드가 평가되어 가 생성 이때, 생성된 함수 실행 컨텍스트는 에 푸쉬되고 함수 코드가 실행 -> 함수 코드의 실행이 종료하면 함수 실행 컨텍스트는 실행 컨텍스트 스택에서 되어 제거 자바스크립트 엔진은 단 하나의
Representational State Transfer의 약자로, HTTP를 기반으로 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 아키텍쳐이다. 따라서 REST API는 REST를 기반으로 서비스 API를 구현한 것을 말한다