Study/JavaScript
-
자바스크립트 비동기 처리 async & awaitStudy/JavaScript 2020. 2. 10. 11:12
What is async & await? async & await 문법은 자바스크립트 비동기 처리 패턴 중 비교적 최근에 나온 문법이다. 이는 콜백 함수와 프로미스의 단점을 보완하고 가독성을 높이고 관리의 편의성을 높인 방식이다. 기본 문법 구조 async function 함수명() { await 비동기처리메소드명(); } async는 함수명 앞에 붙여주고 await는 비동기 처리 메소드명 앞에 붙여준다. await 뒤에 오는 비동기 처리 메소드는 반드시 Promise 객체를 반환하는 함수여야 한다. 보통 Axios와 같이 프로미스 객체를 반환하는 API 호출 함수가 비동기 처리 메소드 자리에 온다. 그리고 await 키워드는 async 함수 내부에서만 유효하다. 여러 개 비동기 처리 다루기 with H..
-
자바스크립트 비동기 처리 PromiseStudy/JavaScript 2020. 2. 9. 12:49
What is Promise? The Promise object represents the eventual completion (or failure) of an asynchronous operation, and its resulting value. Promise 객체는 자바스크립트의 비동기 처리에 사용되는 객체이며, 비동기 처리할 작업의 성공 또는 실패를 분리해서 코드를 실행하고 그에 대한 결과 값을 반환한다. Promise의 상태 프로미스는 Promise 객체가 생성되고 종료될 때까지 3가지 상태를 가지고 있다. 대기(pending) : 비동기 처리 로직이 아직 이행하거나 거부되지 않은 초기 상태 이행(fulfilled) : 비동기 처리가 성공적으로 완료되어 결과 값을 반환한 상태 거부(rejected..
-
자바스크립트 비동기 처리 다루기 (Asynchronous call)Study/JavaScript 2020. 2. 8. 09:00
왜 비동기 처리가 필요한가? 자바스크립트 코드가 작성된 순서대로 실행되어야 하는 경우가 있고 그렇지 않은 경우가 있다. 예를 들어, 서버에 데이터를 요청한 후에 데이터가 포함된 화면을 출력하는 코드가 있다고 하자. 그런데 어떠한 문제가 발생하여 데이터를 불러오는데 오랜 시간이 걸리게 되면 데이터를 불러오는 코드에서 작업이 멈추게 되고 그 다음에 작성된 코드는 실행조차 되지 않는다. 이와 같이 모든 코드가 작성된 순서대로, 즉 동기적으로 처리된다면? 아마 웹 애플리케이션을 실행하는데는 수십 분이 소요될 것이다. 이럴 때 필요한 것이 코드가 작성된 순서대로 실행되지 않고, 특정 작업의 처리가 끝날 때 까지 기다려주지 않고 나머지 코드를 먼저 실행하는 것이 비동기 처리이다. 비동기 처리 Asynchronous..
-
[생활코딩] JavaScript 정규표현식Study/JavaScript 2019. 12. 9. 19:48
정규표현식 (regular expression) 정규표현식(regular expression)은 문자열에서 특정한 문자를 찾아내는 도구다. 정규표현식은 두가지 단계로 이루어진다. 하나는 컴파일(compile) 다른 하나는 실행(execution)이다. - 컴파일 compile 컴파일은 검출하고자 하는 패턴을 만드는 일이다. 우선 정규표현식 객체를 만들어야 한다. 객체를 만드는 방법은 두가지가 있다. 정규표현식 리터럴 : var pattern = /a/ 정규표현식 객체 생성자 : var pattern = new RegExp('a'); - 실행 execution object.exec( ) RegExp.exec() console.log(pattern.exec('abcdef')); // ["a"] : 실행결과는..
-
[생활코딩] JavaScript 데이터 타입Study/JavaScript 2019. 12. 9. 10:19
데이터 타입 Data type 데이터 타입이란 데이터의 형태를 의미한다. 데이터 타입은 크게 두가지로 구분할 수 있다. 객체와 객체가 아닌 것. 객체가 아닌 데이터 타입을 원시 데이터 타입(primitive type)이라고 한다. 그 외의 모든 데이터 타입들은 객체다. ◆ 원시 데이터 타입(primitive type) : 숫자, 문자열, boolean(true/false), null, undefined 객체 뒤에 등장하는 점 . : object access operator var str = 'coding'; console.log(str.length); // 6 console.log(str.charAt(0)); // "C" 위와 같이 문자열은 분명히 프로퍼티와 메소드가 있다. 하지만 문자열은 객체가 아니다..