mirror of
https://github.com/Eggbertx/gochan.git
synced 2025-08-19 12:36:23 -07:00
38 lines
No EOL
935 B
JavaScript
38 lines
No EOL
935 B
JavaScript
import { getCookie, setCookie } from "./cookies";
|
|
|
|
|
|
export function getStorageVal(key, defaultVal = "") {
|
|
if(localStorage == undefined)
|
|
return getCookie(key, defaultVal);
|
|
let val = localStorage.getItem(key);
|
|
if(val === null)
|
|
return defaultVal;
|
|
return val;
|
|
}
|
|
|
|
export function getBooleanStorageVal(key, defaultVal = false) {
|
|
let val = getStorageVal(key, defaultVal);
|
|
return val == true || val == "true";
|
|
}
|
|
|
|
export function getNumberStorageVal(key, defaultVal = 0) {
|
|
return Number.parseFloat(getStorageVal(key, defaultVal));
|
|
}
|
|
|
|
export function getJsonStorageVal(key, defaultVal) {
|
|
let val = defaultVal;
|
|
try {
|
|
val = JSON.parse(getStorageVal(key, defaultVal));
|
|
} catch(e) {
|
|
val = defaultVal;
|
|
}
|
|
return val;
|
|
}
|
|
|
|
export function setStorageVal(key, val, isJSON = false) {
|
|
let storeVal = isJSON?JSON.stringify(val):val;
|
|
if(localStorage == undefined)
|
|
setCookie(key, storeVal);
|
|
else
|
|
localStorage.setItem(key, storeVal);
|
|
} |