일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- BETA
- DEEPDIVE
- 에러 처리
- 브라우저의 렌더링 과정
- rest api
- Deep Dive
- 스프레드 문법
- 프로미스
- Set과 Map
- await
- 제너레이터
- 디스트럭처링 할당
- 데이터 타입
- 이터러블
- Escape Hatches
- Ref로 값 참조하기
- 비동기 프로그래밍
- 개발 환경 구축
- 코어JS
- 클로저
- 모듈
- js
- Strict Mode
- ES6 함수의 추가 기능
- REACT
- async
- Ref로 DOM 다루기
- 배열
- 싸피
- 표현식과 문
- Today
- Total
목록분류 전체보기 (59)
코딩을 쉽게 해보자
1. 내부 슬롯과 내부 메서드 프로퍼티 어트리뷰트를 이해하기 위해 내부 슬롯(internal slot)과 내부 메서드(internal method)의 개념에 대해 알아보자. 내부 슬롯과 내부 메서드는 자바스크립트 엔진의 구현 알고리즘을 설명하기 위해 EMCAScript 사양에서 사용하는 의사 프로퍼티(pseudo property)와 의사 메서드(pseudo method)다. EMCAScript 사양에 등장하는 이중 대괄호 ([[...]])로 감싼 이름들이 내부 슬롯과 내부 메서드다. 내부 슬롯과 내부 메서드는 자바스크립트 엔진의 내부 로직이므로 원칙적으로 JS는 내부 슬롯과 내부 메서드에 직접적으로 접근 / 호출 방법 제공 X 단, 일부 내부 슬롯과 내부 메서드에 한하여 간접적 접근 수단 제공 예를 들어..
1. var 키워드로 선언한 변수의 문제점 ES5까지 변수를 선언할 수 있는 유일한 방법은 var 키워드를 사용하는 것 1-1. 변수 중복 선언 허용 var 키워드로 선언한 변수는 중복 선언이 가능하다. 초기화 문이 없는 변수 선언문은 무시된다. 1-2. 함수 레벨 스코프 함수의 코드 블록만을 지역 스코프로 인정한다. var 키워드로 선언한 변수는 코드 블록 내에서 선언해도 모두 전역 변수가 된다. for 문의 변수 선언문에서 var 키워드로 선언한 변수도 전역 변수가 된다. 1-3. 변수 호이스팅 // 이 시점에는 변수 호이스팅에 의해 이미 foo 변수가 선언되었다(1. 선언단계) // 변수 foo는 undefined로 초기화된다(2. 초기화 단계) console.log(foo) // undefined..
전역 변수의 무분별한 사용은 위험하다. 전역 변수를 반드시 사용해야하지 않는다면 지역 변수를 사용해야 한다. 1. 변수의 생명주기 1-1. 지역 변수의 생명주기 변수는 선언에 의해 생성되고 할당을 통해 값을 갖는다. 그리고 언젠가 소멸한다. 변수는 생성되고 소멸되는 생명 주기(life cycle)이 있다. 변수 선언은 런타임 이전 단계에서 자바스크립트 엔진에 의해 먼저 실행된다. -> 엄밀히 말하자면 전역 변수에 한정 지역 변수의 생명 주기는 함수의 생명 주기와 일치한다. var x = 'global'; function foo() { console.log(x); // undefined var x = 'local'; } foo(); console.log(); // global 1에서는 지역 변수 x를 참조..
1. 스코프란? 모든 식별자(변수 이름, 함수 이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위가 결정된다. 자바스크립트 엔진은 스코프를 통해 어떤 변수를 참조해야할 것인지 결정한다. 스코프란 식별자를 검색할때 사용하는 규칙, 식별자가 유효한 범위라고 한다. var 키워드로 선언한 변수의 중복 선언 var 키워드로 선언된 변수는 같은 스코프 내에서 중복 선언이 허용된다. 이는 의도치 않게 변수값이 재할당되어 변경되는 부작용을 발생시킨다. 2. 스코프의 종류 코드는 전역(global)과 지역(local)로 구분할 수 있다. 전역 변수는 어디서든지 참조할 수 있다. 지역 변수는 자신의 지역 스코프와 하위 지역 스코프에서 유효하다. 지역이란 함수 몸체 ..