1. 程式人生 > >JS的COOKIE操作函式

JS的COOKIE操作函式

JSCOOKIE操作函式

COOKIE通常可以用來辨別使用者身份、進行session跟蹤,而且一般是以加密的形式儲存在使用者本地終端。

很多人知道用動態指令碼程式來設定COOKIE,但是如何用JS來設定COOKIE,也許用過,但並沒有用到比較簡單的方法。

這裡分享幾個JS操作COOKIE的函式:

/** 獲取COOKIE */

function GetCookie (name) {

var arg = name + "=";

var alen = arg.length;

var clen = document.cookie.length;

var i = 0;

while (i < clen) {

var j = i + alen;

if (document.cookie.substring(i, j) == arg) return getCookieVal (j);

i = document.cookie.indexOf(" ", i) + 1;

if (i == 0) break;

}

return null;

}

/** 設定COOKIE */

function SetCookie (name, value) {

var argv = SetCookie.arguments;

var argc = SetCookie.arguments.length;

var expires = (argc > 2) ? argv[2] : null;

var path = (argc > 3) ? argv[3] : null;

var domain = (argc > 4) ? argv[4] : null;

var secure = (argc > 5) ? argv[5] : false;

document.cookie = name + "=" + escape (value)

+ ((expires == null) ? "" : ("; expires=" + expires.toGMTString()))

+ ((path == null) ? "" : ("; path=" + path))

+ ((domain == null) ? "" : ("; domain=" + domain))

+ ((secure == true) ? "; secure" : "");

}

/** 刪除COOKIE */

function DeleteCookie (name) {

var exp = new Date();

exp.setTime (exp.getTime() - 1);

var cval = 0;

document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();

}

function getCookieVal(offset) {

var endstr = document.cookie.indexOf (";", offset);

if (endstr == -1)endstr = document.cookie.length;

return unescape(document.cookie.substring(offset, endstr));

}

這裡主要用到三個函式,即:GetCookieSetCookieDeleteCookie,最後的getCookieVal是在GetCookie中呼叫的一個子函式。

1GetCookie(name)

獲取COOKIE值,引數nameCOOKIE名稱。

2SetCookie(name, value)

設定COOKIE值,設定nameCOOKIE值。

3DeleteCookie (name)

刪除nameCOOKIE值。

相關推薦

c語言 解析常用字元操作函式

       在c語言中有很多的字元操作函式,而我們經常用到的字元操作函式有strcpy ,strncpy ,strcat ,strcmp ,strlen ,strlwr ,strupr ,gets ,puts ,等等很多很多。    

GPIO IO操作函式

#include <linux/gpio.h> //裡面宣告io口的操作函式 int gpio_request(unsigned gpio, const char *label);//每個io只能被請求一次,可防止多個驅動來控制同一個IO口 void gpio_

mysql 樹操作函式,取子節點,取父節點

取子節點 DROP FUNCTION IF EXISTS FUN_GET_CHILD_LIST; CREATE FUNCTION FUN_GET_CHILD_LIST (ROOT_ID INT)RETURNS varchar(1000)BEGINDECLARE sTemp VARCHAR (

Tensorflow程式設計基礎筆記之一——基礎型別及操作函式

TensorFlow程式設計基礎筆記之一——基礎型別及操作函式 1.1 張量介紹 tensor型別(與python對比) tensor型別 Python型別 描述 DT_

matlab對影象操作函式的詳解(筆記1)

matlab對影象操作函式的詳解 一. 讀寫影象檔案 1. imread imread函式用於讀入各種影象檔案,如:a=imread('e:\w01.tif') 注:計算機E盤上要有w01相應的.tif檔案。 2. imwrite imwrite函式用於寫入影象檔案,如:im

C語言檔案操作函式總結——超詳細

版權宣告 本文原創作者:谷哥的小弟 作者部落格地址:http://blog.csdn.net/lfdfhl 檔案與流 在C語言中有三種標準流: stdin(standard input stream)標準輸入流。在大多數環境中為從鍵盤輸入;scanf( )和getchar( )

mongo中的遊標與資料一致性的取捨 spring-data-mongodb 使用原生aggregate語句 mongo的runCommand與集合操作函式的關係 spring-data-mongodb與mongo shell的對應關係 mongo中的遊標與資料一致性的取捨

除了特殊註釋外,本文的測試結果均基於 spring-data-mongodb:1.10.6.RELEASE(spring-boot-starter:1.5.6.RELEASE),MongoDB 3.0.6   我們在學習了一門程式語言時,一定要明白語句底層的意義,比如 User user= n

php檔案操作函式

file_get_contents 獲取一個檔案或一個網路資源的內容,是比較快捷的函式,內部封閉了開啟/關閉操作 但是小心,此函式一次性把檔案內容全部讀出來,放記憶體裡. 工作中,處理大檔案時候.慎用此函式 不支援https協議,如需複製https網頁,請改用curl

BITS_TO_LONGS的解釋及相關為操作函式

巨集BITS_TO_LONGS #define BITS_PER_BYTE 8 #define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long)) #define DIV_ROU

Linux下原子操作函式

Linux 下gcc內建的原子操作函式 標頭檔案 #include<asm/atomic.h> 編譯時需要加上-march= cpu-type(可以設定為native 讓系統自動去檢測) //先獲取值再操作 type __sync_fetch_an

c語言檔案操作函式講解

c語言檔案操作 什麼是檔案 磁碟上的檔案是檔案。包含程式檔案和資料檔案。 程式檔案:包括.c檔案,和可執行檔案(exe.檔案)。 資料檔案:程式從檔案中讀取,或者輸出檔案,比如存放資料的txt檔案。 檔名 檔名包含檔名+檔案主幹+檔案字尾。 檔案型別 檔案型別有文字檔

Makefile中字串操作函式

makefile函式呼叫的形式: $(function args) function:函式名 args: 函式引數。引數和函式名之間用空格或tab鍵隔開,多個引數之間用逗號隔開。 1、subst – 特定字串替換 $(subst from,to,text) 在文字"t

set的使用03(較多的操作函式

1367: Data Structure Time Limit: 1 Sec Memory Limit: 128 MB [Submit][Status][Web Board] Description 給出一個集合,初始為空,進行N次操作,操作分為三種: 1 往集合中新增一個元素,如果

【資料結構】順序表的操作函式

SeqList.h #ifndef __SEQLIST_H__ #define __SEQLIST_H__ #include <stdio.h> #include <assert.h> #include <malloc.h> #include <window

(二)陣列,字串操作函式

陣列: 陣列可以理解為有序的 成對兒 的資料組成的集合 PHP 中根據索引值得不同 分為 :索引陣列 和 關聯陣列 即 PHP 中的陣列NB 了很多 下標不僅可以用數字 還可以 使用字串 陣列的建立 1,使用 array 函式來建立陣列 若建立時 只設置 valu

關於以前excel記憶體開啟操作函式的使用說明。

為方便讀者使用excel記憶體開啟檔案,對於使用方法做如下解釋,注意彩色字型提示。 第一步。 .h標頭檔案包含 extern "C" { #include "InjectExcel.h" } .cpp中操作 _cUnpAbaoExcel a(new _cMyExce

資料結構-迴圈佇列的基本操作函式實現(含全部程式碼)

    主要包含以下函式:    InitQueue(SqQueue &Q)              引數:迴圈佇列Q 功能:初始化迴圈佇列Q 時間複雜度:O(1)     QueueEmpty(SqQueue Q)              引數:迴圈佇列Q

資料結構-鏈隊的基本操作函式的實現(含全部程式碼)

主要包含以下函式:        InitQueue(LinkQueue &Q) 引數:鏈隊Q 功能:初始化  時間複雜度O(1)     EnQueue(LinkQueue &Q,QElemType e) 引數:鏈隊Q,元素e 功能:將e入隊 時間複雜度

連結串列的遍歷、打印表長、找到元素列印、插入值x的操作函式

#include <stdio.h> #include <stdlib.h> /*節點結構制定*/ typedef struct _st_node {int data; struct _st_node *next;

VS 2017 檔案基本操作函式

Code #include <iostream> #include <cstdlib> #include <process.h> FILE *stream, *stream1, *stream2; #pragma warning(disable:49