pile·
백엔드·뷰노뷰노·

Python vs Javascript Array Methods Comparison

뷰노 SW 개발팀의 신규 입사자 필수 이수 코스를 밟으며 Python 과 JavaScript 의 배열 메서드를 짝지어 비교한 글이다. 이름이 비슷한 메서드들이 실제로는 원본을 바꾸는지, 무엇을 반환하는지가 다르다는 점을 하나씩 확인한다.

핵심 포인트
  • 비교의 초점은 두 가지다. 메서드가 원본 배열을 변형하는지(mutation), 그리고 무엇을 반환하는지(return)다.
  • 끝에 요소를 추가할 때 JavaScript `push()` 는 새 길이를 반환하지만 Python `append()` 는 반환값이 없다.
  • 정렬·반전은 JavaScript 쪽이 결과를 반환하면서 원본도 바꾸고, Python 쪽은 반환 없이 원형을 변화시킨다.
  • Python 의 `sort()` 와 `sorted()` 는 `key=`, `reverse=` 옵션 인자를 갖는다.
  • Python `pop(i)` 의 인덱스 기본값이 -1 이라, 인자를 생략하면 JavaScript `pop()` 처럼 마지막 요소를 제거한다.
상세 정리
  • 배경: 팀에 새로 합류한 사람이 기술 스택에 익숙해지도록 위키에 정리된 필수 이수 코스를 두고 있으며, Python·Flask·Docker·React 등 9개 과정으로 구성돼 있다.
  • 각 과정은 작성한 코드를 GitHub 에 커밋하는 것으로 완료 처리된다.
  • 글은 그 과정을 밟으며 자연스럽게 두 언어의 데이터 타입을 비교하게 된 경험에서 출발했다.
  • 먼저 Python 의 데이터 타입을 관점에 따라 다르게 분류한 그림 두 장을 놓고, 배열 비교에 필요한 관점을 종합한 그림으로 재구성한다.
  • 이어서 JavaScript 의 데이터 타입 분류를 놓고 두 언어의 배열 메서드를 선으로 연결해 대응 관계를 보인다.
  • 제거 계열 정리: JavaScript `shift()` 는 첫 요소를, `pop()` 은 마지막 요소를 제거하고 제거된 요소를 반환한다.
  • 예제 코드는 참고 사이트의 것을 활용했다고 출처를 밝힌다.
왜 읽나두 언어를 오가며 작업하다 `append` 와 `push`, `sort` 와 `sorted` 의 반환·변형 차이에 걸려 본 개발자에게 대조표를 준다.
뷰노
뷰노 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 백엔드·twilio-engTwilio Engineering·

    Programmable Messaging에서 Verify API로 마이그레이션하기

    Twilio의 Programmable Messaging API로 자체 OTP 솔루션을 운영하던 서비스가 Verify API로 전환하는 방법을 코드 예시와 함께 설명한다. Verify는 OTP 전송·검증을 위한 전용 API로, 전화번호 구매, 토큰 생성, DB 저장·만료 관리를 내부에서 처리해 개발자가 직접 구현할 코드를 크게 줄인다.

    요약 이어보기
    #authentication#twilio#sms+2
  2. 백엔드·포스타입포스타입·

    포스타입이 개인화 추천을 하는 방법 2부

    포스타입 백엔드 엔지니어가 벡터 기반 개인화 추천 시스템을 실제 운영하며 맞닥뜨린 성능 장애와 용량 문제를 해결한 과정을 담은 2부다. 수백만 개의 벡터 KNN 검색이 피크 시간대에 전체 Elasticsearch 검색 성능을 흔드는 문제부터 클러스터 OOM 사태까지, 쿼리 최적화와 인프라 분리 두 가지 경로로 근본 해결에 이른다.

    요약 이어보기
    #elasticsearch#vector-search#recommendation-system+2
  3. 백엔드·포스타입포스타입·

    포스타입이 개인화 추천을 하는 방법 1부

    포스타입이 태그 기반 추천의 한계를 극복하고 벡터 임베딩 기반 개인화 추천 시스템을 구축한 과정을 담은 1부다. 유사한 콘텐츠가 다른 용어를 쓰거나 동일한 태그가 전혀 다른 톤의 콘텐츠를 가리키는 문제를 임베딩 벡터로 해결하고, OpenSearch의 HNSW ANN 검색으로 수백만 벡터를 실시간 검색하는 시스템을 구축해 구매율 15% 향상을 달성했다.

    요약 이어보기
    #opensearch#vector-search#recommendation-system+2