본문 바로가기

IT노트(구)/JavaScript

location.href, location.replace의 차이

자바스크립트에서 페이지 이동을 하려면

다음 3가지 방법을 사용할 수 있다!(물론 다른 방식도 있지만 크게 3가지로 나눌 수 있다!)


location.href = url;

location.assign(url);
location.replace(url);


일단 'location.href = url;'과 ' location.assign(url);'은 완전히 똑같다고 보면 된다!


따라서 href와 replace의 차이만 숙지하면 된다!


먼저 'location.replace(url);'는 페이지를 완전히 덮어씌우는 개념이다.

따라서 브라우저에 히스토리도 남지 않고

뒤로가기 버튼을 눌러도 이전 페이지는 건너뛰게 된다.(그냥 페이지가 통째로 덮어씌워진 형태이므로!)


반면에 'location.href = url;'는 히스토리도 남고

뒤로가기 버튼도 잘 먹힌다!(우리가 일반적으로 생각하는 페이지 이동법이라고 할 수 있다!)


어떤 방법을 쓰든 큰 차이는 없다!

다만 replace는 가끔 요긴하게 사용할 수 있다!(조용히 페이지를 전환시킬 때 등)