之前用jQuery.cookie來獲取cookie,雖然簡單,但是項目上又多引用了一個插件,總覺得不太好,下面是我封裝的js原生獲取cookie的函數(shù)。
function getCookie(cookieName) {
? ? ? ? //獲取所有的cookie "psw=1234we; rememberme=true; user=Annie"
? ? ? ? var totalCookie = document.cookie;
? ? ? ? //獲取參數(shù)所在的位置
? ? ? ? var cookieStartAt = totalCookie.indexOf(cookieName + "=");
? ? ? ? //判斷參數(shù)是否存在 不存在直接返回
? ? ? ? if (cookieStartAt == -1) {
? ? ? ? ? ? return;
? ? ? ? }
? ? ? ? //獲取參數(shù)值的開始位置
? ? ? ? var valueStartAt = totalCookie.indexOf("=", cookieStartAt) + 1;
? ? ? ? //以;來獲取參數(shù)值的結(jié)束位置
? ? ? ? var valueEndAt = totalCookie.indexOf(";", cookieStartAt);
? ? ? ? //如果沒有;則是最后一位
? ? ? ? if (valueEndAt == -1) {
? ? ? ? ? ? valueEndAt = totalCookie.length;
? ? ? ? }
? ? ? ? //截取參數(shù)值的字符串
? ? ? ? var cookieValue = unescape(totalCookie.substring(valueStartAt, valueEndAt));
? ? ? ? return cookieValue;
? ? }
? ? console.log(getCookie("user"));
? ? console.log(getCookie("psw"));
? ? console.log(getCookie("rememberme"));
一個函數(shù)搞定的事情就不需要引入jQuery.cookie插件啦!