“Сохранить в локальном хранилище с истечением срока действия” Ответ

Сохранить в локальном хранилище с истечением срока действия

function ls_support(){
    return "localStorage" in window&&window["localStorage"]!==null;
}

function lsset(key,val,exp){
    if(ls_support()){
        if(!exp) exp=600;// = 10 minutes Default
        localStorage[key]=
            JSON.stringify({
                "val":val,
                "exp":~~((new Date()).getTime()/1000)+exp
            });
    }
}

function lsget(key){
    if(ls_support()){
        str=localStorage[key];
        if("undefined"!=typeof(str)&&str.length){
            try{// is json or not
                json=JSON.parse(str);
            }catch(e){// if variable not set via lsset func
                //json.exp=false;// will return null
                return str;// will return original variable
            }
            if(json.exp){// variable setted via lsset func
                if(~~((new Date()).getTime()/1000)>json.exp){// expired
                    delete localStorage[key];
                }else{
                    return json.val;
                }
            }
        }
    }
    return null;
}
Frail Fox

Сохранить в локальном хранилище с истечением срока действия

function setWithExpiry(key, value, ttl) {
	const now = new Date()

	// `item` is an object which contains the original value
	// as well as the time when it's supposed to expire
	const item = {
		value: value,
		expiry: now.getTime() + ttl,
	}
	localStorage.setItem(key, JSON.stringify(item))
}
Frail Fox

Ответы похожие на “Сохранить в локальном хранилище с истечением срока действия”

Вопросы похожие на “Сохранить в локальном хранилище с истечением срока действия”

Больше похожих ответов на “Сохранить в локальном хранилище с истечением срока действия” по JavaScript

Смотреть популярные ответы по языку

Смотреть другие языки программирования