프론트엔드/Javascript

비동기를 처리하는 3가지 방법 1. Callback 함수 showFirst(function(result) { showSecond(result, function(nextResult) { showThird(nextResult, function(finalResult) { console.log('the final result: ' + finalResult); }, failureCallback); }, failureCallback); }, failureCallback); 문제점 1) 가독성이 매우 떨어진다. (콜백지옥) 2) 복잡해지는 에러처리. - 각 콜백함수에서 에러 핸들링을 해주어야한다. 에러처리를 하지 않으면 콜백함수 호출시, 어디서 에러가 발생한지 알기 어렵다. 2. Promise 객체 Promise를 ..
1. 자바스크립트는 어떤 언어 인가? -> 자바스크립트는 인터프리터 언어이며 단일 스레드이다. 2. 실제 사용시 멀티스레드처럼 사용하는 방법은? -> Web Worker (멀티스레드) Web Worker란? 멀티스레드의 기능. Web Worker가 생성될 때 마다 고유 스레드를 같이 생성한다. HTML 페이지에서 스크립트가 실행되면 해당 페이지는 스크립트가 끝날 때 까지 작업을 멈춘다. 이를 해결하기 녀석이 Web Worker이다. 이 녀석의 핵심 특징 2가지는 아래와 같다. 특징 1) Web Worker는 HTML페이지의 퍼포먼스에 영향을 주지 않는다. 2) 다른 스크립트와는 독립적으로 백그라운드에서 실행되는 JS(멀티스레드)이다. 효과 멀티스레드 작업이 가능해짐으로 속도 성능 크게 향상. 기존의 웹은..
Class vs Object vs Instance GOAL - Class, Object, Instance의 개념을 설명할 수 있다. - Class, Object, Instance의 차이를 설명할 수 있다. Class란? 개념: 객체를 만들기 위한 전체적인 틀이자 객체들을 정의해 놓은 것이다. 비유: 붕어빵 틀 Object란? 개념: 객체는 클래스 내부를 구성하는 요소다. 비유: 붕어빵틀로 만들어진 붕어빵 Instance란? 개념: 객체를 실체화 한것. 실체화? 대체 무슨말이지? 우선 객체와 인스턴스를 다시 정석대로 정의해보면 객체란 소프트웨어 세계에 구현할 대상 인스터스란 소프트웨어 세계에 구현된 구체적인 실체 두 정의를 쉽게 풀어보면, Coffee라는 클래스 있다. 커피의 종류에는 아메리카노, 카페라떼..
들어가기전 자바스크립트의 함수는 호출될 때, 매개변수로 전달되는 인자값 이외에, arguments 객체와 this를 암묵적으로 전달 받는다. 자바스크립트의 경우 함수 호출 방식에 따라 this에 바인딩 되는 객체가 달라진다. 1. 함수 호출 기본적으로 this는 전역객체에 바인딩된다. 전역함수, 내부함수, 메소드의 내부함수, 콜백함수 모두 전역객체에 바인딩된다. 내부함수는 일반함수, 메소드, 콜백함수 어디에 선언되었든 this는 전역객체를 바인딩한다. function foo() { // 전역함수 console.log("foo's this: ", this); // window function bar() { // 내부함수 console.log("bar's this: ", this); // window } b..
꿀표
'프론트엔드/Javascript' 카테고리의 글 목록 (3 Page)