쿠키에 만료 날짜와 시간을 지정하고 그 값을 쿠키 안에 함께 저장하면, 현재 브라우저 세션이 종료된 이후에도 쿠키의 수명을 연장할 수 있습니다. 이는 expires 속성에 원하는 날짜와 시간을 설정하는 방식으로 구현합니다.
동작 원리
핵심 코드는 now.setTime(now.getTime() + 1 * 3600 * 1000)입니다. 현재 시간에 1시간(3,600초 × 1,000밀리초)을 더해 만료 시각을 계산한 뒤, toUTCString() 메서드로 UTC 표준 형식의 문자열로 변환하여 쿠키 문자열에 추가합니다.
예제
아래 예제를 실행하면 이름을 입력한 뒤 버튼을 클릭했을 때 쿠키가 생성되고, 정확히 1시간 후에 자동으로 만료됩니다.
<html>
<head>
<script>
<!--
function WriteCookie() {
var now = new Date();
now.setTime(now.getTime() + 1 * 3600 * 1000);
cookievalue = escape(document.myform.customer.value) + ";"
document.cookie="name=" + cookievalue;
document.cookie = "expires=" + now.toUTCString() + ";"
document.write ("Setting Cookies : " + "name=" + cookievalue );
}
//-->
</script>
</head>
<body>
<form name="myform" action="">
Enter name: <input type="text" name="customer"/>
<input type="button" value="Set Cookie" onclick="WriteCookie()"/>
</form>
</body>
</html>