본문 바로가기

fe48

[ 엘리스 SW 엔지니어 트랙 ] 19일차 📍 19일 차 11.19. 금.(온라인 강의) 오늘은 async - await, error처리, HTTP, REST API에 대해서 배웠다. ❏ async / await 문법 Promise 를 활용한 비동기 코드를 간결하게 작성하는 문법 async / await 문법으로 비동기 코드를 동기 코드처럼 간결하게 작성할 수 있다. async 함수와 await 키워드를 이용한다. await 키워드는 반드시 async 함수 안에서만 사용해야 한다. async 로 선언된 함수는 반드시 Promise 를 리턴한다. async 함수는 function 키워드 앞에 async 를 붙여 만든다 async 함수 내부에서 await 키워드를 사용한다. fetchData, fetchUser는 Promise 를 리턴하는 함수이다... 2021. 11. 19.
[ 엘리스 SW 엔지니어 트랙 ] 18일차 📍 18일 차 11.18. 목.(실시간 강의) 오늘은 실시간 강의로 Ajax, promise, async / await, SPA 에 대해 배웠다. ❏ SPA 만들기 SPA로 구현하려면 경로로 접속할 때 같은 파일을 내려줘야 한다. html 파일은 웹 서버에서 보관하고 html 해석은 웹 브라우저에서 한다. html 파일을 가공해서 고객들에게 보여주는 행위를 client side tech, 혹은 front end 라고 한다. header: 서버에서 클라이언트에게 전달하는 정보 fetch를 사용하면 JSON 형태의 내용이 온다. JS에서 객체를 표현하는 방법을 참고해서 만든 data spec JSON.parse: JSON으로 넘어온 데이터를 JS 객체 형태로 바꾼다. Ajax: JS를 사용하여 브라우저가 서.. 2021. 11. 18.
[ 엘리스 SW 엔지니어 트랙 ] 17일차 📍 17일 차 11.17. 수.(온라인 강의) 오늘은 어제 배웠던 동기 / 비동기, 콜백함수, promise에 대해 더 자세하게 배웠다. promise는 3~4개월 전인가? 토스 코딩 테스트에서 비동기적으로 api 호출하는 테스트가 나왔었는데, 그때 문제의 의도를 정확하게 파악하지 못해서 틀렸던 경험이 있었다. 프론트엔드와 비동기는 떼려야 뗄 수 없는 관계이므로 잘 기억하자. ❏ 자바스크립트 제어 흐름 자바스크립트는 다른 멀티스레드 프로그래밍 언어(JAVA, C++)와 다른 방식으로 비동기 동작을 처리한다. 처음 자바스크립트를 접하는 경우, 동작에 대한 정확한 이해가 없으면 코드의 흐름을 따라가기 어렵다. 자바스크립트 내부의 비동기 동작을 이해하기 위해서는 이벤트 루프 등의 개념을 알아야만 한다. JS .. 2021. 11. 17.
[ 자바스크립트(JavaScript) ] 스코프 체인(Scope chain)에 대해서 알아보자 📍 스코프 체인(scope chain)에 대해서 알아보자. scope는 식별자에 대한 유효 범위를 나타낸다. 어떤 경계 A의 외부에서 선언한 변수는 A의 외부뿐 아니라 A의 내부에서도 접근이 가능하지만, A의 내부에서 선언한 변수는 오직 A의 내부에서만 접근할 수 있다. 이러한 식별자의 유효범의를 안에서부터 바깥으로 차례로 검색해나가는 것을 스코프 체인이라고 부른다. 이때 outerEnvironmentReference는 현재 호출된 함수가 선언될 당시의 L.E를 참조하게되는데, 중요한 점은 과거 당시 선언된 시점이다. 다음 코드의 foo()와 bar()의 출력값은 1로 동일한데, 그 이유는 function bar가 선언된 시점의 x는 전역 변수인 x를 바라보게 된다. 즉, this처럼 함수를 어디서 호출.. 2021. 11. 15.
[ 엘리스 SW 엔지니어 트랙 ] 15일차 📍 15일 차 11.13. 토.(온라인 강의) 오늘은 JS엔진, JS 코드 실행, 렉시컬 환경, Hoisting, globalThis 등에 대해서 배웠다. 실행 컨텍스트, 렉시컬 파트는 확실하게 배워놔야 나중에 까먹지 않을 것이다. ❏ JS 엔진 JS 엔진은 JS 코드를 읽어 실행하는 프로그램이다. JS 코드는 JS 엔진을 통해 파싱되고 실행된다. Chrome 브라우저의 경우 V8 엔진을 사용한다. node.js 는 브라우저 외의 환경에서 JS 코드를 실행하도록 하는 프로그램이다. node.js 는 여러 프로그램으로 구성되며, JS 코드를 읽는 프로그램으로 V8을 사용한다. 브라우저 환경과 node.js 환경은 같은 JS 코드를 작성해도 다르게 동작할 수 있다. ❏ JS 코드 실행 JS 엔진은 코드 실행.. 2021. 11. 15.