기술면접

12/17 기술면접 정리

이지호_tech 2022. 12. 17. 01:33

1. div와 span 의 차이점

<div> 콘텐츠의 영역이나 그룹화를 할때 사용
<span> 다른 텍스트와 구별하기 위해 사용

div는 가로공간 전체를 차지하고 인라인요소가 아니기에 width, height 크기 지정이 가능하고

줄바꿈이 되지만 span은 인라인 요소이며 문장의 길이공간만큼 차지함

핵심은 줄바꿈!!!!

 

2. 이벤트 버블링 이란?

어떤 객체에 대한 이벤트가 발생했을때, 해당 객체의 최상위 부모까지 이벤트가 전달 되는 과정

html구조상 자식 요소에 발생한 이벤트가 상위 요소에 영향을 미치는 것인데
이를 차단하고 싶을때는 e.stopPropagation을 호출하면 이벤트 전파를 막을 수 있다.

 

3. 'Call by value'와 'Call by reference'란?

변수 혹은 객체등이 함수의 인자로 들어와 매개변수로 전달 될때 어떤 방식으로 전달될지 결정하는 방식

  • Call by value(값에 의한 호출, 값의 복사)
  • Call by reference(참조에 의한 호출, 주소의 복사)

일반적으로 숫자, 문자열, 불리언, null, undefiend, 심볼등의 기본형을 매개변수로 넘길때 Call by value

객체, 배열, 함수, 날짜, 정규표현식 등의 참조형을 매개변수로 넘길때 Call by reference

기본형(Primitive type)의 경우 call by value 방식으로 전달된다.

  • 장점 : 복사하여 처리하기 때문에 안전하다. 원래의 값이 보존이 된다.
  • 단점 : 복사를 하기 때문에 메모리가 사용량이 늘어난다.

객체(ex. obj, array, function ...)는 call by reference 방식으로 전달된다.

  • 장점 : 복사하지 않고 직접 참조를 하기에 빠르다. 복사되는 값이 데이터의 주소 값이라는 차이점
  • 단점 : 직접 참조를 하기에 원래 값이 영향을 받는다.(리스크)

주소값 재할당 시 => 서로 다른 주소값을 가지게 되어 원본값에 영향 X

배열의 속성 추가 하거나 변경시 => 원본데이터에도 영향 O

 

4. 깊은복사와 얕은 복사

원시 값을 변수에 할당하면 변수(확보된 메모리 공간)에는 실제 값이 저장된다.

반면에, 객체를 변수에 할당하면 변수(확보된 메모리 공간)에는 참조 값(메모리 주소)이 저장된다.

얕은 복사(shallow copy)는 원본 객체는 하나인 상태에서, 참조 값만 복사한다.

깊은 복사(deep copy)는 원시 값처럼 완전한 복사본을 만든다.

출처: https://choar816.tistory.com/154

 

'기술면접' 카테고리의 다른 글

10월 5주차 기술면접 대비 질의응답  (4) 2024.10.28
10.7 기술면접 공부 정리  (2) 2024.10.11
브라우저 렌더링의 원리  (0) 2022.12.24