Kakor i JavaSkript: Set, Get & Delete Exempel

Vad är cookies?

En cookie är en bit data som lagras på din dator för att nås av din webbläsare. Du kan också ha åtnjutit fördelarna med cookies medvetet eller omedvetet. Har du någonsin sparat ditt Facebook-lösenord så att du inte behöver skriva det varje gång du försöker logga in? Om ja, så använder du cookies. Cookies sparas som nyckel/värdepar.

Varför behöver du en kaka?

Kommunikationen mellan en webbläsare och servern sker med hjälp av ett tillståndslöst protokoll som heter HTTP. Tillståndslöst protokoll behandlar varje begäran oberoende. Så servern behåller inte data efter att ha skickat den till webbläsaren. Men i många situationer kommer uppgifterna att krävas igen. Här kommer kakor till en bild. Med cookies kommer webbläsaren inte att behöva kommunicera med servern varje gång data krävs. Istället kan den hämtas direkt från datorn.

Javascript Ställ in Cookie

Du kan skapa cookies med hjälp av dokument. cookie-egenskap som denna.

document.cookie = "cookiename=cookievalue"

Du kan till och med lägga till utgångsdatum för din cookie så att den specifika kakan tas bort från datorn på det angivna datumet. Utgångsdatumet bör ställas in i UTC/GMT-format. Om du inte ställer in utgångsdatumet kommer cookien att tas bort när användaren stänger webbläsaren.

document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC"

Du kan också ställa in domänen och sökvägen för att ange till vilken domän och till vilka kataloger i den specifika domänen cookien tillhör. Som standard tillhör en cookie sidan som ställer in cookien.

document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC; path=/ "

//skapa en cookie med en domän till den aktuella sidan och sökväg till hela domänen.

JavaSkript hämta Cookie

Du kan komma åt cookien så här som kommer att returnera alla cookies som sparats för den aktuella domänen.

var x =  document.cookie

JavaSkript Ta bort Cookie

För att radera en cookie behöver du bara ställa in värdet på cookien till tom och ställa in värdet på expires till ett passerat datum.

document.cookie = "cookiename= ; expires = Thu, 01 Jan 1970 00:00:00 GMT"

Prova det här exemplet själv

Särskilda instruktioner för att få koden att fungera ... Tryck två gånger på startknappen

<html>
<head>
	<title>Cookie!!!</title>
	<script type="text/javascript">
		function createCookie(cookieName,cookieValue,daysToExpire)
        {
          var date = new Date();
          date.setTime(date.getTime()+(daysToExpire*24*60*60*1000));
          document.cookie = cookieName + "=" + cookieValue + "; expires=" + date.toGMTString();
        }
		function accessCookie(cookieName)
        {
          var name = cookieName + "=";
          var allCookieArray = document.cookie.split(';');
          for(var i=0; i<allCookieArray.length; i++)
          {
            var temp = allCookieArray[i].trim();
            if (temp.indexOf(name)==0)
            return temp.substring(name.length,temp.length);
       	  }
        	return "";
        }
		function checkCookie()
        {
          var user = accessCookie("testCookie");
          if (user!="")
        	alert("Welcome Back " + user + "!!!");
          else
          {
            user = prompt("Please enter your name");
            num = prompt("How many days you want to store your name on your computer?");
            if (user!="" && user!=null)
            {
            createCookie("testCookie", user, num);
            }
          }
        }
	</script>
</head>
<body onload="checkCookie()"></body>
</html>