#javascript #redirect #cookies #settimeout
#язык JavaScript #перенаправлять #файлы cookie #время ожидания
Вопрос:
Я пытаюсь создать функцию, которая будет создавать файлы cookie каждый час (и функция будет проверять, не существует ли этот файл cookie, каждый час), и если файл cookie существует, функция будет перенаправлять на другую страницу с помощью settimeout()каждую минуту. Я прикрепил код, который я сделал, но он работает не так, как ожидалось, потому что я не знаю, как сделать первую часть :
lt;scriptgt; function redirect(){ /**create cookie every hour, check if cookie exists, if not create and redirect the page every one mintue***/ document.cookie = 'createCookie=ok'; let createCookie = document.cookie; /**create cookie every hour, check if cookie exists, if not create and redirect the page every one mintue***/ setTimeout(function(){ if(createCookie != null){ //if cookie set window.location.href='https://www.google.com/'; } else{ //if cookie not set } }, 60000); redirect();//to recall the script after it is done } lt;/scriptgt;
Комментарии:
1. Описание и комментарии противоречат друг другу. В описании: «если файл cookie существует, функция выполнит перенаправление на другую страницу» , в комментариях: «если нет, создайте и перенаправьте страницу»
Ответ №1:
Однако это не рекомендуемый подход, так как вы нигде не очищаете интервал, но вот вы идете:
function redirect() { document.cookie = 'createCookie=ok'; let createCookie = document.cookie; setInterval(function() { if (createCookie != null) { //if cookie set window.location.href = 'https://www.google.com/'; } else { document.cookie = 'createCookie=ok'; let createCookie = document.cookie; } }, 60000); } redirect()
Комментарии:
1. Спасибо! однако это хорошее направление — как я могу настроить набор файлов cookie и проверять, что происходит каждый ЧАС ? ни минуты (60000) ?
2. Обмен
60000
с3600000