JSFiddle - React, Tailwind, and code Playground

by Nicolas PUJOL

HTML

<h2 id="save_test">0</h2>
<div id="deleteCookie">Supprimer cookie</div>

JavaScript

var test = document.getElementById('save_test');

var Cookies = {
    init: function() {
        var allCookies = document.cookie.split('; ');
        for (var i = 0; i < allCookies.length; i++) {
            var cookiePair = allCookies[i].split('=');
            this[cookiePair[0]] = cookiePair[1];
        }
    },
    create: function(name, value, days) {
        if (days) {
            var date = new Date();
            date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
            var expires = "; expires=" + date.toGMTString();
        } else var expires = "";
        document.cookie = name + "=" + value + expires + "; path=/";
        this[name] = value;
    },
    erase: function(name) {
        this.create(name, '', -1);
        this[name] = undefined;
    },
    get: function(name) {
        var name = name + "=";
        var ca = document.cookie.split(';');
        for (var i = 0; i < ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') c = c.substring(1);
            if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
        }
        return "";
    }
};


function saveIt(name) {
    var x = valeur_test;
    Cookies.create(name, x, 7);
}

function readIt(name) {
    valeur_test = parseInt(Cookies.get(name)) || 0;
}

function eraseIt(name) {
    Cookies.erase(name);
    valeur_test = 0;
    var a = document.createTextNode(valeur_test);
    test.replaceChild(a, test.lastChild);
    clearInterval(timerID);
}
readIt('cookie1')

function myfunction() {
    valeur_test += 1;
    var a = document.createTextNode(valeur_test);
    test.replaceChild(a, test.lastChild);
    saveIt('cookie1')
}
document.getElementById("deleteCookie").onclick = function() {
    eraseIt('cookie1');
}
var timerID = setInterval(myfunction, 1000);