인프런 커뮤니티 질문&답변

LEO님의 프로필 이미지

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

immer 도입하기

unshift 사용 시의 성능

21.08.02 21:37 작성

·

429

0

unshift를 사용하면 모든 요소에 대해서 연산이 발생해서 성능적으로 문제가 생긴다는 내용을 본 기억이 있는데  성능에 문제가 없나요?
성능상 문제가 있다면 실무에서는 어떤 식으로 사용하는 지 궁금합니다.

답변 1

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2021. 08. 03. 04:39

네 첫 번째 자리를 바꾸는 것이라 모든 요소에 대해 주소값을 바꿔줘야 해서 O(n)이 소요됩니다. 배열의 요소가 몇백만개라면 다른 자료구조를 쓰는 게 낫습니다. 다만, 이런 일이 흔한 것은 아니고요. 다른 자료구조를 만드는 비용이 더 들 수도 있습니다.

그리고 자바스크립트에서 성능 문제는 생각하지 않는 것이 좋습니다. 애초에 성능 생각할 것이면 자바스크립트를 쓰면 안 되는데다가 대부분의 성능 문제는 반복문에서 발생하지 이런 사소한 함수 하나에서 발생하지 않습니다.

LEO님의 프로필 이미지

작성한 질문수

질문하기