반응형

전체 글 139

"this" 키워드 퀴즈 7개 풀이 (1~3번) by Dmitri Pavlutin

https://dmitripavlutin.com/javascript-this-interview-questions/#question-1-variable-vs-property 7 Interview Questions on "this" keyword in JavaScript. Can You Answer Them? 7 interview questions to challenge your knowledge on "this" keyword in JavaScript. dmitripavlutin.com 위 사이트에서 정확한 this의 객체를 파악하는 능력을 기르기 위한 7가지 퀴즈가 있어 풀이해보려 한다. 아직 this를 찾는 일이 쉽지 않아 이렇게 문제를 보면 풀어보면서 꾸준히 연습해야겠다. Question 1: Var..

IT/JS 2021.08.12

클로저(closure)

클로저는 아래의 글에서 간략하게 설명했었던 개념이다. 이번 글에서는 클로저에 대해 자세히 알아보고 모르는 개념들을 함께 정리해보려고 한다. https://lifeandit.tistory.com/60 고차 함수 그리고 중첩 함수 고차 함수(Higher Order Function; HOF) 고차 함수는 함수를 인자(argument)로 받거나 함수를 리턴하는 함수이다. 다른 함수(caller)의 인자로 전달되는 함수를 콜백 함수(callback function)라고 한다. 콜백 함수.. lifeandit.tistory.com 실행 컨텍스트는 동작 원리를 담고 있는 개념으로, 자바스크립트 엔진에서는 물리적 객체의 형태로 관리(나열 구조) 클로저(closure)의 개념 클로저는 자바스크립트 고유의 개념은 아니지만..

IT/JS 2021.08.11

고차 함수 그리고 중첩 함수

고차 함수(Higher Order Function; HOF) 고차 함수는 함수를 인자(argument)로 받거나 함수를 리턴하는 함수이다. 다른 함수(caller)의 인자로 전달되는 함수를 콜백 함수(callback function)라고 한다. 콜백 함수를 전달받은 함수는 이 콜백 함수를 필요한 시점에 호출하거나, 클로저를 생성하여 반환한다. 클로저 MDN의 정의는 다음과 같다. “A closure is the combination of a function and the lexical environment within which that function was declared.” 클로저는 함수와 그 함수가 선언됐을 때의 렉시컬 환경(Lexical environment)과의 조합이다. 여기서 함수는 내부 ..

IT/JS 2021.08.10

primitive & reference 차이점 그리고 garbage collector에 대하여

Primitive (원시의) 값과 Reference (참조) 값의 차이점 JS에는 7가지의 자료형이 있다. 나는 이것을 스불ㄴ,,너어우스!! (쓰불넘쓰)라고 부른다.. 변수 타입의 앞글자에 내 마음대로 음절을 만든 것인데 이렇게 만든 이유는 그냥 외우기 쉬워서 그랬다.. 스(S:string) - 문자열 불(B:boolean) - 불리언 ㄴ(N:number) - 숫자 너(N:null) - null 어(U:undefined) - undefined 우(O:object) - object 쓰(S:symbol) - symbol 여기서 Primitive 값(원시 값)은 object를 제외한 나머지 타입들을 말한다. 따라서 Reference 값(참조 값)은 object이다. 원시 값은 실제 자료를 가리키며, 참조 값은..

IT/JS 2021.08.10

npm install에 대하여

npm이란? npm은 Node Package Manager의 약자로, 자바스크립트 언어를 위한 패키지 관리자이다. Node.js의 패키지 생태계인 npm은 세계에서 가장 큰 오픈 소스 라이브러리 생테계이기도 하다. NodeJS에서 사용할 수 있는 모듈들을 패키지화하여 모아둔 저장소 역할을 하며, 설치와 관리를 수행할 수 있는 CLI(Command Line Interface)를 제공한다. 서드파티(주 기술을 이용하여 파생되는 따위의 것들을 생산하는 집단) 모듈을 패키지라고 한다. 그리고 모든 패키지엔 package.json 파일이 있다. npm install + no arguments npm install를 실행하면 package.json의 dependencies 필드 정보를 기반으로 직접 패키지를 생성한..

IT/JS 2021.08.09

JS에서의 this란 무엇일까?

MDN에서 function.prototype.apply()에 대해 공부하면서 폭풍 검색을 하던 중 this에 대해 공부하게 되었다. this는 메소드를 호출한 객체를 담는 속성이다. this를 함수의 이자로 넘기어 this의 값들을 사용하고, 변경할 수 있다는 것이다. 또한 메소드를 호출한 객체가 무엇이냐에 따라 value와 this.value가 같을 수도, 달라질 수도 있다. this가 만들어지는 5가지의 경우를 통해 이해해보려고 한다. 일반 함수에서의 this 중첩 함수에서의 this 이벤트에서의 this 메소드에서의 this 메소드 내부의 중첩 함수에서의 this 1. 일반 함수에서의 this var value = 10; function case1 () { this.value = 11; value ..

IT/JS 2021.07.26

코딩할때 개선할 점 모음

불필요한 주석 제거한다. 꼭 필요한 것이 아니라면 주석 달지 않도록 한다! 변수 정의할 때 var 사용 자제한다. const, let이 나온 이후 var은 잘 사용하지 않는다. 함수 안에서, 밖에서 재할당 되는 값인지 생각하고 일관성을 갖자. 변수의 이름을 지을 때, 제 3자가 봐도 쉽게 이해할 수 있도록 작성하자. 변수의 이름이 길어지는 것에 두려워말자! 할당된 변수는 재할당하지 않는다. 코드가 길고 복잡한 경우, 예상치 못한 결과가 발생될 수 있다! class name을 작성할 때, camel case가 아닌 kebab case로 작성한다. 일반적인 컨벤션이라고 한다! 가독성에 신경쓰자. 책을 쓴다고 생각하자! 함수를 빠져나올 때는 return! 함수 안에 for문에서 볼일 다 봤으면(?) retur..

IT/JS 2021.07.24
반응형