document.cookieでcookieを全て取得します。
console.log(GetCookie('key1')); function GetCookie(name){ var result = null; var cookieName = name + '='; var allcookies = document.cookie; var position = allcookies.indexOf(cookieName); if(position != -1){ var startIndex = position + cookieName.length; var endIndex = allcookies.indexOf(';', startIndex); if(endIndex == -1){ endIndex == allcookies.length; } result = decodeURIComponent(allcookies.substring(startIndex, endIndex)); } return result; }
indexOfは全文検索。allcookieの中で、key3=のポジションを取得
indexOf(‘hoge’, n) は、nの位置から、hogeを全文検索
つまり、indexOf(‘;’, 308)は、308以降の次の’;’を検索
allcookie.substring()で、valueを切り抜いています。
console.log(document.cookie); console.log(document.cookie.indexOf('key3=')); //position console.log(308); // start index console.log(document.cookie.indexOf(';', 308)); // end index 311 console.log(document.cookie.substring(308, 311));