본문 바로가기

Front-end/Basic

(9)
Web Programming Tutorial https://poiemaweb.com/ 웹 프로그래밍 튜토리얼 | PoiemaWeb Front-end Development Tutorial poiemaweb.com
Async, Await와 Promise의 차이는? Async, Await와 Promise의 차이는? Promise를 더욱 쉽게 사용할 수 있도록 ES2017(ES8) 문법입니다. 함수의 앞부분에 async 키워드를 추가하고, 함수 내부에서 Promise의 앞부분에 await 키워드를 사용한다. async, await를 사용할 경우 코드가 간결해지지만, 에러 처리를 잡기 위해 try-catch()를 사용해야합니다. 동기적인 코드 흐름으로 개발이 가능합니다. 자바스크립트에서는 비동기 처리를 다룰 수 있는 방법에는 여러 가지가 있다. 주로 callback, Promise, async/await를 활용한다. 그 중에서도 요즘 특히 많이 사용되는 Promise, async/await의 특징 및 간단한 사용 예시와 둘의 차이점을 정리한다. Promise Promi..
GET, POST는 어떻게 다르게 쓰는지? + REST API GET, POST는 어떻게 다르게 쓰는지 GET GET method는 클라이언트에서 서버로 어떠한 리소스로부터 정보를 요청하기 위해 사용되는 메서드입니다. 데이터를 읽거나(Read), 검색(Retrieve)할 때에 사용되는 method라고 할 수 있습니다. GET은 요청을 전송할 때 URL 주소 끝에 파라미터로 포함되어 전송되며, 이 부분을 쿼리 스트링(QueryString)이라고 부릅니다. GET 방식은 데이터를 요청할 때 이 요청하는 데이터가 HTTP Request Message의 Header 부분의 url에 담겨서 전송된다. 그래서 요청시 url 상에 ? 뒤에 데이터가 붙어서 request를 보내는 것이다. 요청 파라미터가 여러 개인 경우 &로 연결합니다. 그리고 GET 요청은 오로지 데이터를 읽을..
Promise와 Callback의 차이점은 무엇이며 각각의 장단점은? 비동기 프로그래밍(Asynchronous) Promise와 Callback의 차이점은 무엇이며 각각의 장단점은? 둘 다 자바스크립드에서 비동기 처리를 위해서 사용되는 패턴이며, Callback 같은 경우 함수의 처리 순서를 보장하기 위해서 함수를 중첩하게 사용되는 경우가 발행해 콜백헬이 발행하는 단점과 에러 처리가 힘들다라는 단점이 있다. 그래서 나온게 Promise이며 ES6부터 정식 채택되어 사용중이다. Promise 생성자 함수를 통해 인스턴스화하며, // Promise 객체의 생성 const promise = new Promise((resolve, reject) => { // 비동기 작업을 수행한다. if ( /* 비동기 작업 수행 성공 */) { resolve('result'); } else {..
AJAX란 무엇인가? 비동기 프로그래밍 (Asynchronous) AJAX란 무엇인가 자바스크립트를 이용해 비동기적으로 서버와 브라우저가 데이터를 교환할 수 있는 통신 방식 보통은 서버로부터 웹페이지가 반환되면 전체 갱신해야하는데, AJAX를 사용하면, 페이지 일부만 갱신하고도 동일한 효과를 볼 수 있다. 즉, 갱신이 필요한 부분만 로드하여 갱신하면 되므로 빠르고, 부드러운 화면 효과를 기대할 수 있음
클로저는 무엇인가요? 원리와 왜 사용하는지 클로저란? 클로저는 독립적인 (자유) 변수를 가리키는 함수이다. 또는, 클로저 안에 정의된 함수는 만들어진 환경을 '기억한다'. 클로저(Clousure)란 무엇이며, 왜 이러한 패턴을 사용하는가 반환된 내부함수가 자신이 선언됐을 때의 환경인 스코프를 기억하여 자신이 선언되었을 때의 환경 밖에서 호출되어도 그 환경에 접근할 수 있는 함수, 자신이 생성될 때의 환경을 기억하는 함수 사용하는 이유 1) 현재 상태를 기억하고 변경된 최신 상태를 유지하기 위해 2) 전역 변수의 사용을 억제하기 위해 3) 정보를 은닉하기 위해 https://hyunseob.github.io/2016/08/30/javascript-closure/ https://realmojo.tistory.com/300 https://sunnyki..
Http와 Https 통신 방식의 차이? Http와 Https 통신 방식의 차이? 결정적 차이는 보안이다. Http 방식은 네트워크상에서 정보를 누군가가 마음대로 열람, 수정 가능 / Https는 누가 볼 수 없도록 막음 Http 방식이 Https 방식보다 빠르다. Http 방식은 민감한 정보를 다룰 때 항상 변조, 해킹 가능성을 생각해야 한다. https는 설치 및 인증서를 유지하는데 추가적인 비용이 발생함 따라서, 민감한 정보가 있는 페이지의 경우 https, 그럴 필요가 없으면 http로 만들면 된다. https://sunnykim91.tistory.com/m/121
호이스팅(Hoisting) 이란 ? 자바스크립트의 호이스팅(Hoisting)은 어떻게 이루어져 있는가 변수를 선언하고 초기화 했을 때 선언 부분이 최상단으로 끌어올려지는 현상 예를 들어, 코드 상단에서 console.log(a) 를 찍고 하단에서 var a=1; 이라고 했을 때 a는 undefined라고 나온다. 이런 현상을 호이스팅이라고 한다. 함수의 경우 함수표현식은 호이스팅이 적용되지 않으나 일반 함수선언문은 함수 호이스팅이 적용된다. 호이스팅(Hoisting)의 개념 함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것 호이스팅이란 자바스크립트 함수는 실행되기 전에 함수 안에 필요한 변수값들을 모두 모아서 유효 범위의 최상단에 선언한다. 자바스크립트 Parser가 함수 실행 전 해당 함수를 한 번 훑..