local storage
https://habr.com/post/349164/
,
cookie
JavaScript
Как сохранить переменную внутри браузера до следующей перезагрузки браузера ?
Так
localStorage.xx=123;
alert(localStorage.xx);
только в localStorage сохраняются строковые данные когда вытащишь обратно не забудь преобразовать в нужный тип
⚤
localStorage.xx=123;
alert(localStorage.xx);
только в localStorage сохраняются строковые данные когда вытащишь обратно не забудь преобразовать в нужный тип
⚤
По порядку...
Чтение сохраненного объекта, если есть: const stateObj = JSON.parse(localStorage.getItem('state') || '{}');
Получение значения из объекта: let foo = stateObj.foo || 0; // ноль как значение по-умолчанию
Помещение значения в объект: stateObj.foo = foo; // foo - любая переменная или выражение
Запись объекта (сохранение): localStorage.setItem('state', JSON.stringify(stateObj));
Чтение сохраненного объекта, если есть: const stateObj = JSON.parse(localStorage.getItem('state') || '{}');
Получение значения из объекта: let foo = stateObj.foo || 0; // ноль как значение по-умолчанию
Помещение значения в объект: stateObj.foo = foo; // foo - любая переменная или выражение
Запись объекта (сохранение): localStorage.setItem('state', JSON.stringify(stateObj));
localStorage либо sessionStorage
Васи Лиск
Кхм, sessionStorage не переживет перезапуск браузера, by design.
В любой случае самый надежный вариант - это Cookie:
// ФАЙЛ JavaScript: работа с Cookies
// ФУНКЦИЯ: сохранение значения в Cookie
function setCookie(name, value, expires, path, domain, secure) {
document.cookie = name + "=" + escape(value) +
((expires) ? "; expires=" + expires : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
// ФУНКЦИЯ: получение значения из Cookie
function getCookie(name) {
var cookie = " " + document.cookie;
var search = " " + name + "=";
var setStr = null;
var offset = 0;
var end = 0;
if (cookie.length > 0) {
offset = cookie.indexOf(search);
if (offset != -1) {
offset += search.length;
end = cookie.indexOf(";", offset)
if (end == -1) {
end = cookie.length;
}
setStr = unescape(cookie.substring(offset, end));
}
}
return(setStr);
}
// ФУНКЦИЯ: удаление значения из Cookie
function delCookie(cookie_name) {
var cookie_date = new Date ( ); // Текущая дата и время
cookie_date.setTime ( cookie_date.getTime() - 1 );
document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}
// ФАЙЛ JavaScript: работа с Cookies
// ФУНКЦИЯ: сохранение значения в Cookie
function setCookie(name, value, expires, path, domain, secure) {
document.cookie = name + "=" + escape(value) +
((expires) ? "; expires=" + expires : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
// ФУНКЦИЯ: получение значения из Cookie
function getCookie(name) {
var cookie = " " + document.cookie;
var search = " " + name + "=";
var setStr = null;
var offset = 0;
var end = 0;
if (cookie.length > 0) {
offset = cookie.indexOf(search);
if (offset != -1) {
offset += search.length;
end = cookie.indexOf(";", offset)
if (end == -1) {
end = cookie.length;
}
setStr = unescape(cookie.substring(offset, end));
}
}
return(setStr);
}
// ФУНКЦИЯ: удаление значения из Cookie
function delCookie(cookie_name) {
var cookie_date = new Date ( ); // Текущая дата и время
cookie_date.setTime ( cookie_date.getTime() - 1 );
document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}
Похожие вопросы
- Как объявить глобальную переменную внутри функции в js?
- глобальные/локальные переменные в JavaScript
- Работа с переменными JS
- Целесообразно ли хранение синтаксиса javascript в переменной?
- Локальные и глобальные переменные
- Можно ли именовать переменную в JS?
- Помогите с JavaScript (локальные/глобальные переменные/функции)
- Синтаксис переменная Var и Let Отличие
- JavaScript. Как проверить, была ли определена переменная?
- Не правельно складываются переменные js