URLSearchParams append·set: UTM을 더할 때 같은 키가 겹치는 이유
URLSearchParams.append()는 같은 키가 있어도 새 값 쌍을 추가합니다. set()은 해당 키의 값을 지정하면서 같은 키의 다른 값은 지웁니다. UTM을 붙인 주소에서 같은 이름이 두 번 보인다면 두 메서드의 역할부터 확인하세요. 목차 1. append는 새 쌍을 덧붙입니다 2. set은 같은 키의 값을 하나로 정합니다 3. 바꾼 주소와 원본을 따로 비교합니다 1. append는 새 쌍을 덧붙입니다 링크 목록에서 반복 키를 발견했다고 곧바로 오류라고 지우지는 마세요. 검색 필터처럼 여러 값을 의도한 주소도 있을 수 있습니다. 먼저 이 주소에서 키 하나가 한 값만 가져야 하는지, 여러 선택을 표현하는지 구분하는 편이 좋습니다. 아래는 외부로 요청하지 않는 문자열 예시입니다. 실제 서비스나 추적 링크에 접속해서 결과를 얻었다는 뜻은 아닙니다. const p = new URLSearchParams('tag=book&tag=life'); p.append('tag', 'travel'); console.log(p.toString()); // tag=book&tag=life&tag=travel 2. set은 같은 키의 값을 하나로 정합니다 원본 조작 결과 tag=book&tag=life append('tag','travel') tag가 세 번 tag=book&tag=life set('tag','travel') tag=travel 키가 없는 상태 set('tag','travel') 새 tag 쌍 생성 기존 UTM을 새로운 값 하나로 교체하려는 목적과, 검색 필터를 하나 더 넣으려는 목적은 다릅니다. 메서드 이름을 외우기 전에 결과 주소에서 몇 개의 같은 키가 남아야 하는지를 먼저 적어보세요. MDN append의 같은 키 추가 예시 보기 MDN set의 값 교체·다른 값 제거 설명 보기 3. 바꾼...