기술면접 2주차(0)

강연주·2024년 10월 8일

🙋‍♀️ 기술면접

목록 보기
12/112

2주차

8. Async/Await와 Promise의 차이에 대해 설명해주세요.

Async는 Await 함수가 들어가는 비동기의 기본 같은 그런 느낌
Promise는 비동기 함수가 리턴하는 프로미스 객체.

콜백 헬(callback hell) Async/await 코드 스타일에 이점

9. 데이터 10,000개를 가지고 무한 스크롤 구현시에 가장 중요하게 고려해야 할점은 무엇인가요?

대량의 데이터를 처리하면서 무한 스크롤을 구현하는 것 말씀이시죠? 몰르갓습니당~!

데이터 조회 방식 구현하는 방법이나 구현 시, 사용할 라이브러리를 예시 들기

10. Javascript의 호이스팅에 대해 설명해주세요.

전체 코드 내에서 변수 선언부의 위치와 상관 없이,
코드 실행 시 (런타임) 선언이 최상단으로 끌어올려지는 현상.
이로 인해 첫번째 줄부터 변수를 참조할 수 있다.
var 사용 시 호이스팅이 명확히 보이고,
let과 const는 호이스팅 없이 동작하는 듯하나 실제로는 이루어진다.

호이스팅(Hoisting)은 JavaScript에서 변수 및 함수 선언이 컴파일 단계에서 상단으로 옮겨지는 현상을 가리킵니다. 이것은 코드 실행 단계에서 일어나는 것이 아니라, JavaScript 엔진이 스크립트를 해석하기 전에 발생하는 것입니다.

변수와 함수 선언은 선언 단계와 초기화 단계로 나뉩니다. 호이스팅은 선언 단계에서 변수나 함수를 상단으로 옮겨지는 것을 의미하며, 초기화 단계는 코드의 위치에 따라 발생합니다.

실행 컨텍스트 변수 함수선언부가 '끌어올려짐'

11. 동기와 비동기의 차이에 대해 설명해주시고 비동기프로그래밍의 필요성에 대해 답변해주세요.

  • 동기 : 코드가 쓰여진 순서대로 실행
  • 비동기 : 처리 속도에 따라 작업이 완료되도록 실행

먼저 쓰인 코드가 무겁고 느릴 경우 나중에 오는 코드들은 무작정 대기해야 하는 비효율 발생.

동기는 작업을 순차적으로 진행하며,각 작업은 이전 작업의 완료를 기다리고,한 작업이 시작하면 그 작업이 완료될 때까지 다음 작업이 차단되어 대기합니다.

비동기는 비동기적인 작업이 완료되기를 기다리지 않고, 다른 작업을 동시에 진행할 수 있고 특정 이벤트의 발생,콜백 함수의 실행,또는 Promise와 같은 비동기 패턴을 통해 처리됩니다.

비동기 프로그래밍은 성능 향상,반응성 향상, 효율성,스케일링과 확장성을 위해서 필요합니다.

12. 브라우저의 작동방식에 대해서 설명해주세요.

HTML 읽고 뭐 파싱하고 막 그런 거 질문인가요..?

사용자가 URL을 입력하거나 링크를 클릭하면,브라우저는 해당URL로 요청을 보냅니다.

13. GET, POST 방식의 차이점에 대해서 설명해주세요.

음?

GET:데이터는 URL에 포함되어 전송되고,URL을 통해 전송되므로 보안에 취약합니다.

POST:데이터는 HTTP 요청의 본문(body)에 포함되어 전송되고,데이터가 본문에 포함되어 전송되므로, URL에 노출되지 않습니다.

14. GET, POST의 개념과 함께 데이터 흐름에 대해서 설명해주세요.

오?

GET: 주로 데이터를 조회하고, 요청 파라미터를 URL에 포함시켜 전송합니다.

사용자가 브라우저에서 URL을 입력하거나, 링크를 클릭하면 GET 요청이 생성됩니다.

POST: 클라이언트에서 서버로 데이터를 전송할 때 사용되는 HTTP 메서드입니다.

HTML 폼의 Submit 버튼을 누르거나, JavaScript를 사용하여 POST 요청을 생성합니다.

profile
아무튼, 개발자

0개의 댓글