2022년 6월 7일

Daisy🌼·2022년 6월 6일
0

문자열 메서드는 원본을 변경할까?

  • 코딩테스트 문제를 풀다가, toUpperCase()toLowerCase()가 원래 문자열을 변경하는지 헷갈렸습니다.

  • 결과적으로 toUpperCase()toLowerCase()는 원래 문자열을 변경하지 않고 새로운 문자열을 반환합니다. 따라서 대문자 또는 소문자로 변경한 문자열을 사용하고 싶으면 새로운 변수에 할당하거나 기존의 변수에 재할당해주면 됩니다.

배열에는 원본 배열을 직접 변경하는 메서드(mutator method)와 원본 배열을 직접 변경하지 않고 새로운 배열을 생성하여 반환하는 메서드(accessor method)가 있다. 반면에 String 객체에 직접 변경하는 메서드는 존재하지 않는다. 즉 String 객체의 메서드는 언제나 새로운 문자열을 반환한다.
(<모던 자바스크립트 Deep Dive> 594p)

  • 모든 문자열 메서드는 원본 문자열을 변경하지 않는다는 것을 기억하면 좋을 것 같습니다. (새로운 변수에 할당하거나 기존 변수에 재할당해서 사용하는 것 까지 알아두기!)

📕 참고 자료

profile
커피와 재즈를 좋아하는 코린이 | 좋은 글 좋은 코드를 쓰고 싶습니다

0개의 댓글