01. 객체의 생성방식 객체는 다음과 같은 방법으로 생성 가능하다. ✔️ 객체 리터럴 ✔️ Object 생성자 함수 ✔️ 생성자 함수 ✔️ Object.create ✔️ 클래스(ES6) 세부적인 생성 방식에 차이가 있으나, 추상 연산에 의해 생성된다는 공통점이 있다. 추상 연산 OrdinaryObjectCreate는 필수적으로 생성할 객체의 프로토타입을 인수로 받는다. 먼저, 추상연산 OrdinaryObjectCreate는 빈 객체를 생성하고 객체에 추가할 프로퍼티 목록이 인수로 전달된 경우에만 프로퍼티를 객체에 추가한다. 인수로 전달 받은 프로토타입은 [[Prototype]] 내부 슬롯에 할당된 다음, 생성 객체를 반환한다. 따라서 프로토타입은 OrdinaryObjectCreate에 전달받은 인수에 의..
1. 객체 리터럴의 문제 단 하나의 객체만 생성하므로 동일한 프로퍼티를 갖는 객체를 여러개 생성해야할 때 비효율적이다. const square1 = { side: 3, getArea() { return this.side*this.side; } }; console.log(square1.getArea()); // 9 const square2 = { side: 5, getArea() { return this.side*this.side; } }; console.log(squre2.getArea()); // 25 문제는, 객체마다 프로퍼티 값이 다를 수 있지만 메서드가 동일한 경우가 많다는 사실이다. 예시로 정사각형을 표현한 square1과 square2는 프로퍼티 구조가 동일하다. 이런 경우 객체 리터럴은 구조..
1. 렉시컬 스코프 렉시컬 스코프는 정적 스코프라고도 한다. 함수 정의가 평가되는 시점에 상위 스코프가 정적으로 결정되는 방식을 의미한다. 2. 렉시컬 스코프 예제 var score = 27; function math(){ var score = 30; english(); } function english(){ console.log(score); } math(); // 27 english(); // 27 이 경우 함수의 상위 스코프는 두 가지 예측이 가능하다. 1. 함수를 어디서 호출했는지 2. 함수를 어디서 정의했는지 2. 호출 : 동적 스코프(dynamic scope) 호출을 기준으로 상위 스코프가 결정된다면 english 함수의 상위 스코프는 math 함수의 지역 스코프와 전역 스코프다. 함수 정의 ..

1. null JS의 원시 값 중 하나이다. 어떤 값이 의도적으로 비어있음을 표현하며, 불리언 연산에서 거짓으로 취급된다. 변수에 null을 할당하는 것은 이전의 참조 값을 더 이상 참조하지 않겠다는 의미 참조를 명시적으로 제거한다. 이때, 자바스크립트 엔진은 누구도 참조하지 않는 메모리 공간에 대해 가비지 콜렉션 수행 함수가 유효한 값을 반환할 수 없는 경우도 null을 반환 대소문자를 구별하므로 NULL과는 다르다. 2. undefined 원시값으로 선언한 후 값을 할당하지 않은 변수 혹은 값이 주어지지 않은 인수에 자동 할당 undefined 타입의 값은 undefined가 유일하며, 개발자가 의도적으로 할당하는 값이 아니라 엔진이 변수를 초기화할 때 사용하는 값 최신 브라우저에서 설정 불가 쓰기 ..
- Total
- Today
- Yesterday
- 책추천
- 프로토타입
- typescript
- 일급객체
- 소사벌맛집
- 트러블슈팅
- 플리마켓운영
- 코딩테스트
- 타입좁히기
- 어른의어휘공부
- 플리마켓후기
- 서평
- 어휘력
- js
- 경험플리마켓
- 안성스타필드
- 회고
- react
- 도서추천
- javascript
- 프리코스
- 비즈플리마켓
- 프론트엔드
- 소사벌
- 대학생팝업스토어
- 카드뉴스
- 우아한테크코스
- 카페추천
- 대학생플리마켓
- 도서리뷰
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |