본문 바로가기

자바스크립트 33가지 컨셉12

자바스크립트 개발자가 알아야할 33가지 개념[#16. new, Constructor, instanceof and Instances] new new 연산자는 생성자 함수를 이용해서 새로운 객체 인스턴스(Instances)를 만들때 사용하는 연산자이다. 물론 객체를 만들때 {}를 사용하여 쉽게 만들 수 있지만 유사한 객체를 여러개 만드는 것에 대해선 한계가 있다. alistar와 alistar2는 키, 프로퍼티가 같다. 그러면 새로운 객체를 만들때마다 {}를 사용하면 생성자 함수를 사용할 필요 없이 간단하게 만들 수 있는데 왜 굳이 생성자 함수와 new를 사용해야할까? Constructor(생성자) JAVA에서는 Class가 객체를 생성한다면 자바스크립트 생성자(constructor)함수가 그 역할을 대신한다. 만약 위의 객체처럼 키, 밸류가 2개뿐이 아니라 100개가 있고 매소드도 100개가 있고 또 객체의 각각 마다 속성이 다르다면 .. 2022. 5. 31.
자바스크립트 개발자가 알아야할 33가지 개념[#15. this, call(), apply() and bind()] this this란 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수(self-reference variable)이다. 자바스크립트 엔진에 의해 암묵적으로 생성되며 객체의 프로퍼티나 메소드를 참조하기 위한 자기 참조 변수이므로 일반적으로 객체의 메소드 내부 또는 생성자 함수 내부에서만 의미가 있다. 전역객체 전역객체는 모든 객체의 유일한 최상위 객체를 의미하며 일반적으로 Browser-side에서는 Window, Server-side(Node.js)에서는 global객체를 의미한다. 또한, 전역객체는 전역 스코프를 갖는 전역변수를 프로퍼티로 소유한다. 글로벌 영역에 선언한 함수는 전역객체의 프로퍼티로 접근할 수 있는 전역 변수의 메소드이다. 함수의 this 기본적으로 this는 전.. 2022. 5. 30.
자바스크립트 개발자가 알아야할 33가지 개념[#12. Bitwise Operator(비트 연산자)] Bitwise Operator 비트(bit) : 기술적으로 컴퓨터는 숫자나 문자, 문자열로 작동하는 것이 아니라 이진 숫자(비트)만 사용한다. 그리고 UTF-8과 같은 인코딩을 사용해 저장된 비트 조합을 숫자, 문자, 다른 기호에 매핑한다. UTF-8 유니코드를 인코딩(encoding)하는 방식이다. 전세계에서 사용하는 약속이다. 유니코드 : 전세계 언어를 모두 표시할 수 있는 표준코드를 만들기로 했다. 바로 유니코드(Unicode)다. 자바스크립트에서 9,007,199,254,740,991까지의 범위 (64비트의 환경)를 가진 모든 정수들은 toString(2)메소드를 통해 이진 문자열로 표현 될 수 있다. 비트 연산자를 이용하면 이진 문자열을 직접 비교/조작 할 수 있다. 형식화 배열 형식화 배열(t.. 2022. 5. 24.
자바스크립트 개발자가 알아야할 33가지 개념[#11. JavaScript Engines] 자바스크립트 엔진이란? 자바스크립트 엔진은 자바스크립트 코드를 해석하고 실행하는 인터프리터이다. 대중적으로 알려진 엔진은 구글의 V8엔진인데, 아무래도 가장 많이 사용되는 크롬에서 사용되고, Node.js에서 사용되는 엔진이기 때문이다. SpiderMonkey : 파이어폭스 V8 : 크롬 Webkit : 사파리 Chakra : 익스플로러, 엣지 Node.js와 npm Node.js는 크롬 V8자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경이다. 간단히 말해 브라우저에서만 동작하던 자바스크립트를 브라우저 이외의 환경에서 동작시킬 수 있는 자바스크립트 실행 환경이 Node.js이다. Node.js는 주로 서버 사이드 애플리케이션 개발뿐만 아니라 프론트엔드 영역의 다양한 도구나 라이브러리도 Node.js.. 2022. 5. 21.