일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자스코테
- 정보처리기사실기
- 정보처리기사실기정리
- 스프링
- Oracle
- VUE
- 이안의평일코딩
- 자바의정석
- Java의정석
- 국비코딩
- ReactNative
- 자바스크립트 코딩테스트
- 평일코딩
- 국비IT
- 정보처리기사정리
- 리액트네이티브
- 코딩테스트
- 오라클
- 정보처리기사
- 자바스크립트
- 타입스크립트
- CSS
- php
- spring
- react
- typescript
- 리액트
- 정보처리기사요약
- javascript
- 정보처리기사실기요약
- Today
- Total
목록분류 전체보기 (172)
이안의 평일코딩

22장 p.343 - this는 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수(self-referencing variable)다. this를 통해 자신이 속한 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드를 참조할 수 있다. - 함수를 호출하면 arguments 객체와 this가 암묵적으로 함수 내부에 전달된다. this가 가리키는 값, 즉 this 바인딩은 함수 호출 방식에 의해 동적으로 결정된다. p.345 - 자바스크립트의 경우 Java와 같이 this에 바인딩되는 객체는 한가지가 아니라 해당 함수 호출 방식에 따라 this에 바인딩되는 객체가 달라진다. 자바스크립트의 경우 함수 호출 방식에 의해 this에 바인딩할 어떤 객체가 동적으로 결정된다. 다시 말해, 함수..

20장 p.314 - 잠재적인 오류를 발생시키기 어려운 개발 환경을 만들기 위한 해결책으로 ES5부터 strict mode(엄격 모드)가 추가되었다. 린트 도구는 strict mode가 제한하는 오류는 물론 코딩 컨벤션을 설정 파일 형태로 정의하고 강제할 수 있기 때문에 더욱 강력한 효과를 얻을 수 있다. 따라서 strict mode보다 린트 도구의 사용을 선호한다. - strict mode를 적용하려면 전역의 선두 또는 함수 몸체의 선두에 'user strict';를 추가한다. 전역에 strict mode를 적용하는 것과 함수 단위로 strict mode를 적용하는 것은 피해야한다. 따라서 strict mode는 즉시 실행 함수로 감싼 스크립트 단위로 적용하는 것이 바람직하다. - strict mode..

p.280 - 객체의 생성 방법은 객체 리터럴, Object 생성자 함수, 생성자 함수, Object.create 메서드, 클래스(ES6)가 있다. - 프로토타입은 추상 연산 OrdinaryObjectCreate에 전달되는 인수에 의해 결정된다. 이 인수는 객체가 생성되는 시점에 객체 생성 방식에 의해 결정된다. * 객체 리터럴에 의해 생성된 객체의 프로토타입 - 객체 리터럴에 의해 생성된 객체의 프로토타입은 추상 연산 OrdinaryObjectCreate에 전달되는 프로토타입은 Object.prototype다. 즉 객체 리터럴에 의해 생성되는 객체의 프로토타입은 Object.prototype이다. p.281 객체 리터럴이 평가되면 객체는 constructor 프로퍼티와 hasOwnProperty 메서드..

18장 - 함수를 다른 변수와 동일하게 다루는 언어는 일급 함수를 가졌다고 표현하는데 일급 함수를 가진 언어에서는 변수에 할당할 수 있고 함수를 다른 함수에 매개변수로 제공하거나, 함수가 함수를 반환할 수 있다. // 변수에 할당 const foo = function() { console.log("foobar"); } foo(); // 변수를 사용해 호출 // 인자로 전달 function sayHello() { return "Hello, "; } function greeting(helloMessage, name) { console.log(helloMessage() + name); } // `sayHello`를 `greeting` 함수에 인자로 전달 greeting(sayHello, "JavaScript!..

16 p220. - 모든 객체는 [[Prototype]]이라는 내부 슬롯을 갖는다. 내부 슬롯은 자바스크립트 엔진의 내부 로직이므로 원칙적으로 직접 접근할 수 없지만 [[Prototype]] 내부 슬롯의 경우, __proto__를 통해 간접적으로 접근할 수 있다. - 자바스크립트 엔진은 프로퍼티를 생성할 때 프로퍼티의 상태를 나타내는 프로퍼티 어트리뷰트를 기본값으로 자동 정의한다. 프로퍼티의 상태란 프로퍼티의 값(value), 값의 갱신 가능 여부(writable), 열거 가능 여부(enumerable), 재정의 가능 여부(configurable)를 말한다. - 프로퍼티 어트리뷰트는 자바스크립트 엔진이 관리하는 내부 상태 값(meta-property)인 내부 슬롯 [[Value]], [[Writable]..

strict 옵션이란? 정의해놓은 코드에서 강하게 타입을 정의할 수 있고 추후에 일어날 수 있는 타입 정의에 대한 오류 대응할 수 있고 안전하게 코딩을 할 수있게 한다. tsconfig.json에서 strick 옵션은 default가 false이며 true로 고쳐주면 아래의 옵션들도 같이 true가 된다. { "strict": true, "strictNullChecks": true, "strictFunctionTypes": true, "strictBindCallApply": true, "strictPropertyInitialization": true, "noImplicitThis": true, "alwaysStrict": true, } 내장 타입의 위계 구조 타입 오류 // 타입스크립트 내장 타입의 위계..

13 p.190 - 모든 식별자(변수 이름, 함수 이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위가 결정되는데 이를 스코프라 한다. 즉, 스코프는 식별자가 유효한 범위를 말한다. 식별자 결정(identifier resolution) var x = 'global'; function foo () { var x = 'function scope'; console.log(x); } foo(); // ? console.log(x); // ? => 스코프란 자바스크립트 엔진이 식별자를 검색할 때 사용하는 규칙이라고 할 수 있다. p.193 - 코드는 전역(global)과 지역(local)으로 구분할 수 있고 변수는 자신이 선언된 위치(전역 또는 지역)에 의해..