분류 전체보기(329)
-
구조분해할당
const ex = {a : 123, b: {c:456, d: 789}}; const a = ex.a; const d = ex.b.d; const {a, b:{d}} = ex; // 객체는 키가 일치해야한다. const arr = [1, 2, 3, 4, 5]; const x = arr[0]; const y = arr[1]; const z = arr[4]; const [x,y, , ,z] = arr; // 배열은 자릿수를 맞춰주면 된다. 주의점 - this 를 사용하고 있는 경우에 구조분해할당을 사용하면 문제가 생긴다. - this 는 함수를 호출할 때 어떻게 호출 되었냐에 따라 결정되기 떄문 - this 가 있는 경우는 구조분해할당을 안하는게 좋다.
2023.04.08 -
화살표 함수
일반함수 function add1(x, y) { return x+y; } 화살표 함수 const add1 = (x, y) ⇒ { return x+y; } const add2 = (x,y) ⇒ x+y; const add3 = (x,y) ⇒ (x + y); const not = x ⇒ !x; // 객체를 리턴하는 것은 소괄호가 필수다 const obj = (x, y) ⇒ ({x, y}) - 화살표 함수가 기존 function() {} 을 대체하는 건 아니다. (this 가 달라지기 때문) - 화살표 함수는 부모의 this 를 물려받는다. - 일반 함수는 부모의 this 와 나의 this 가 다르다 . 즉 자기만의 this 를 가진다.
2023.04.08 -
템플릿 문자열 ( 백틱 )
기본 const name = ‘Zac’; console.log(``나의 이름은 ${name} 입니다.``); 함수호출 방법 function a() { console.log('안뇽!'); } a(); // 일반적으로 위처럼 호출하지만 백틱으로도 호출할 수 있고 태그드 템플릿 리터럴 이라고한다. a``; // 템플릿 리터럴
2023.04.08 -
프로토타입 (링크)
https://developer.mozilla.org/ko/docs/Learn/JavaScript/Objects/Object_prototypes Object prototypes - Web 개발 학습하기 | MDN Javascript에서는 객체를 상속하기 위하여 프로토타입이라는 방식을 사용합니다. 본 문서에서는 프로토타입 체인이 동작하는 방식을 설명하고 이미 존재하는 생성자에 메소드를 추가하기 위해 프 developer.mozilla.org https://www.nextree.co.kr/p7323/ JavaScript : 프로토타입(prototype) 이해 JavaScript는 클래스라는 개념이 없습니다. 그래서 기존의 객체를 복사하여(cloning) 새로운 객체를 생성하는 프로토타입 기반의 언어입니다. ..
2023.04.08 -
논 블로킹
Javascript 는 절대 블로킹 연산을 하지 않는다. 논 블로킹은 이벤트 루프 모델의 무척 흥미로운 특징으로 대부분 입출력 처리가 이벤트와 콜백을 통해 수행되므로 애플리케이션이 indexedDB 질의나 XHR 요청의 반환을 대기 중이더라도 여전히 사용자 입력 등 다른 것들을 처리할 수 있는 것이다.
2023.04.08 -
실행컨텍스트
실행할 코드에 제공할 환경 정보들을 모아놓은 객체 순서 1. 호이스팅이 발생 ( 선언된 변수를 위로 끌어올린다, 함수는 함수 전체가 호이스팅된다 ) 2. 외부 환경정보를 구성한다. 3. this 값을 설정한다 - 실행 컨텍스트의 전역공간은 자동으로 컨텍스트로 구성이된다. 구성할때 생기는 것 - VariableEnvironment : 현재 컨텍스트 내의 식별자(변수)들에 대한 정보, 외부 환경 정보, 선언 시점의 LexicalEnvironment 의 스냅샷(변경사항을 반영하지않는다.) - LexicalEnvironment : 처음은 위와 같음, 변경사항이 실시간으로 반영된다. environmentRecord와 outerEnvironmentReference로 구성 되어 있고 environmentRecord ..
2023.04.08