자바스크립트 escape() 함수란?
자바스크립트(JavaScript)의 escape() 함수는 문자열을 인코딩하기 위해 사용되는 전역 함수입니다. 이 함수는 공백, 특수 문자 등을 %xx 형태의 16진수 이스케이프 시퀀스로 변환하여, URL이나 쿠키 값처럼 안전하게 전달해야 하는 문자열로 만들어 줍니다.
다만 escape() 함수는 자바스크립트 1.5부터 지원 중단(deprecated) 상태이며, ECMAScript 표준에서도 제외되었습니다. 따라서 실제 개발에서는 encodeURI() 또는 encodeURIComponent() 함수를 사용하는 것이 권장됩니다.
escape() 예제 코드
다음은 자바스크립트 escape() 함수를 사용해 URL 문자열을 인코딩하는 예제입니다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
body {
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}
.sample {
font-size: 18px;
font-weight: 500;
}
</style>
</head>
<body>
<h1>JavaScript escape()</h1>
<div class="sample"></div>
<button class="Btn">CLICK HERE</button>
<h3>
위 버튼을 클릭하면 URI가 인코딩됩니다
</h3>
<script>
let sampleEle = document.querySelector(".sample");
let url = "https://www.google.com/images?size=420px&name=8s1f.jpg";
document.querySelector(".Btn").addEventListener("click", () => {
sampleEle.innerHTML = escape(url);
});
</script>
</body>
</html>실행 결과

위 화면에서 “CLICK HERE” 버튼을 클릭하면 아래와 같이 URL이 인코딩되어 출력됩니다. 콜론(:)은 %3A, 슬래시(/)는 %2F, 앰퍼샌드(&)는 %26 형태로 각각 변환되는 것을 확인할 수 있습니다.
