Javascript

Function declared in a loop contains unsafe references to variable(s)

F

문제상황 run = (timeout: number) => new Promise<void>((resolve) => { let direction = 'r'; const todos = []; for (let i = 0; i < 15; i += 1) { if (i === 6) direction = 'l'; if (i === 10) direction = 'r'; todos.push(() => { this.dragonBGmove(`${direction + 4}`, timeout); }); todos.push(() => { this.dragonBGmove(`${direction + 3}`, timeout); }); } resolve(); }); 7,8번째 줄에서 다음과 같은 에러가 뜬다. Function...

var vs let

v

공통점 박스 선언 둘다 어떤 값을 넣기 위한 박스를 만드는데 사용된다. 함수 안에서 밖을 참조 함수 밖에있는 값들을 함수 안에서 참조할 수 있다. var outVar = 100; function test1() { console.log(outVar); } test1(); // 100 let outLet = 200; function test2() { console.log(outLet); } test2(); // 200 함수 안에 함수가 있어도 마찬가지이다. function outside() { var myVar = 100; let myLet = 200; function inside() { console.log(myVar); // 100 console.log(myLet); // 200 } inside(); }...

new 작동 방식

n

function Person(saying) { this.saying = saying; } Person.prototype.talk = function() { console.log(this.saying); } var me = new Person("안녕하세요 저는 윤병인입니다"); me.talk(); // "안녕하세요 저는 윤병인입니다" new Person("안녕하세요 저는 윤병인입니다");에서 무슨 일이 일어난걸까? customNew new의 작동방식을 이해하기 위해서 new 연산자와 비슷한 일을 하는 customNew를 구현해보자. function customNew(constructor) { var obj = {}; // 1. 빈 오브젝트를 만든다 Object.setPrototypeOf(obj...

Create React App없이 React + Typescript 환경설정

C

NPM npm init 이것저것 설치하기 (스크롤을 많이 내리다 보면, 한번에 설치하도록 코드를 작성해 놓았습니다. 일일이 복붙 할 필요 없습니다.) Webpack webpack / webpack-cli webpack을 쓰려면 당연히 필요하니까, webpack과 webpack-cli모듈을 설치해준다. npm install --save-dev webpack webpack-cli webpack-dev-server local 환경에서 편하게 테스트해보려면 필요하다. npm install --save-dev webpack-dev-server typescript typescript -> javascript 변환해주는 typescript모듈이 필요하다. npm install --save-dev typescript...