일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 제너릭
- 빌트인객체
- 직렬화
- 인가
- jre
- 이냐
- 딥다이브
- 제네릭
- strict mode
- JDK
- integer
- implements
- Two
- javascript
- 메모리
- 부탁드립니다
- 할당
- SUM
- java
- 로만
- 비전공
- 모던 자바스크립트 딥 다이브
- LeetCode
- Roman
- JVM
- 릿코드
- 파견
- 모던자바스크립트
- 자바
- JSON
- Today
- Total
목록자바스크립트 (10)
AnnSEo.log
Iteration protocol iterable protocol: 이 프로토콜을 준수한 객체를 이터러블이라고 한다. iterator protocol: 이터러블의 Symbol.iterator 메서드 호출 시 이터레이터 프로토콜을 준수한 이터레이터 반환. Iterable Symbol.iterator를 프로퍼티 키로 사용한 메서드를 직접 구현하거나 프로토타입 체인을 통해 Symbol.iterator 메서드를 호출하면 이터레이터 프로토콜을 준수한 이터레이터를 반환한다. for...of문 순회 가능, 스프레드 문법, 배열 디스트럭처링 할당 가능 일반 객체는 Symbol.iterable 메서드를 직접 구하지 않거나 상속받지 않으면 이터러블이 아니므로 위의 3가지 사용 불가. Iterator 이터러블의 Symbol..

ES6에 도입된 7번째 데이터 타입으로 premitive 타입이며 다른 값과 중복되지 않는 유일무이한 값이다. 유일한 객체의 프로퍼티 키(property key)를 만들기 위해 사용된다. 객체의 Private한 property를 가능하게 하기 위해서 시작 → 심볼을 참조하지 않고는 액세스 할 수 없는 프로퍼티 만드는데 사용 33.2 Symbol 값의 생성 Symbol() 함수를 호출해 값을 생성하며 빌트인 객체의 여러 멤버를 가리키는 정적 프로퍼티와 global symbol registry를 가리키는 정적 메서드를 가진다. 모든 심볼 값은 고유하므로 객체 프로퍼티에 대한 식별자로 사용될 수 있다. → 심볼의 고유 목적 원시 값이기 때문에 → 객체 생성 X, new 연산자 사용 X(new 연산자 사용 시 ..
Number 생성자 함수 표준 빌트인 객체로 생성자 함수 객체 const num = new Number(); 위처럼 new 연산자와 함게 호출해 Number 인스턴스 생성가능 인수 전달 안하면 [[NumberData]] 내부 슬롯에 0이 할당됨 위처럼 Number 생성자 함수의 인수로 숫자를 전달하면서 new 연산자와 함께 호출하면 [[NumberData]] 내부 슬롯에 인수로 전달받은 숫자를 할당한 Number 래퍼 객체를 생성함 Number 프로퍼티 - Number.EPSILON - Number.MAX_VALUE - Number.MIN_VALUE - Number.MAX_SAFE_INTEGER Number 메서드 isFinite : Infinity 또는 -Infinity이면 false, 숫자면 true..

클로저 : 함수와 그 함수가 선언한 렉시컬 환경의 조합 함수를 어디에 정의했는지에 따라 상위 스코프를 결정 → 렉시컬 스코프(정적 스코프) 스코프는 실행 컨텍스트의 렉시컬 환경을 말하고 렉시컬 환경에서 외부 렉시컬 환경에 대한 참조는 상위 스코프를 의미한다. 상위 스코프에 대한 참조는 함수 정의가 평가되는 시점에 함수가 정의된 환경에 의해 결정된다. → 즉 호출되는 환경에 무관하게 정의된 환경을 상위 스코프가 기억해야 한다. → 이를 위해 함수 안의 내부 슬롯 [[Environment]]에 자신이 정의된 환경을 저장(상위 스코프의 참조를 저장함) 함수 정의가 평가되어 함수 객체를 생성할 때 [[Environment]]이 저장되고, 여기 저장된 상위 스코프의 참조는 현재 실행 중인 실행 컨텍스트의 렉시컬 ..

자바스크립트는 명령형imperative, 함수형functional, 프로토타입 기반prototype-based 객체지향 프로그래밍(OOP)을 지원하는 멀티 패러다임 프로그래밍 언어다. 자바스크립트에서 premitive type 값을 제외한 나머지는 모두 객체다. 19.1 객체지향 프로그래밍 Object는 특징이나 성질을 나타내는 속성attribute/property를 가짐 Abstraction 추상화는 다양한 속성 중 프로그램에 필요한 속성만 간추려 표현하는 것을 의미 attribute, property를 통해 여러 개의 value를 하나의 단위로 구성한 복합적인 자료구조를 object라고 한다. object의 state를 나타내는 데이터를 property라고 하고, 동작behavior을 나타내는 게 m..
자바스크립트 객체는 아래 3가지로 나뉨 표준 빌트인 객체(Standard built-in objects/native objects/global objects) : ECMAScript 사양에 정의된 객체, 애플리케이션 전역의 공통기능 제공 호스트 객체(host objects) : 자바스크립트 실행환경에서 추가로 제공하는 객체 브라우저 환경 : DOM, BOM, Canvas, XMLHttpRequest, fetch, requestAnimationFrame, SVG, Web Storage, Web Component, Web Worker등의 web API Node.js 환경 : Node.js 고유의 API를 호스트 객체로 제공 사용자 정의 객체(user-defined objects): 사용자가 직접 정의한 객체..