목록기술면접 (8)
가치투자자
객체지향 프로그래밍 지금 자바스크립트를 공부하고 있거나, 혹은 자바스크립트를 공부할까 고민하고 있지만, 과연 자바스크립트가 어떤 특징의 언어인지 제대로 알고 있을까? 자바스크립트(JavaScript) 는 명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍을 지원하는 프로그래밍 언어이다. 하지만 객체지향이 무엇인지, 프로토타입은 또 무엇인지 제대로 알지 못하고 공부를 시작하는 사람이 많다. * 기술면접 질문은 맨 아래에 적혀 있습니다 1. 객체지향 프로그래밍 프로그램을 명령어 또는 함수의 목록으로 보는 전통적인 명령형 프로그래밍의 절차지향적 관점에서 벗어나 여러 개의 독립적 단위, 즉 객체의 집합으로 프로그램을 표현하는 프로그래밍을 말한다. 좀 더 쉽게 설명하자면, 하나의 상자가 있다. 그리고 그 상자는..
호이스팅 (Hoisting) 공식문서를 살펴보면, 호이스팅(hoisting)은 '인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것'을 의미한다고 나와있다. 역시 공식 문서의 용어들은 초보자가 공부하기에 쉽지 않다. 좀 더 쉬운 말로 호이스팅에 대해 설명해보고자 한다. * 기술면접 질문은 맨 아래에 적혀 있습니다 1. 호이스팅이란? 호이스팅은 변수가 선언된 시점보다 먼저 실행되는 현상이다. 좀더 쉽게 설명해보자면, 변수가 어디에 적혀있든지(선언된 시점) 상관없이 맨 위로 끌어와 먼저 실행하는 것을 말한다. 여기서 var, let, const, function, function*, class 키워드를 사용해 선언된 모든 식별자(변수, 함수, 클래스 등)는 호이스팅된다. 아래의 예제를 통해..