by shigemk2

当面は技術的なことしか書かない

JavaScriptでクッキーを取得するやつの雑感

もう完全に枯れ切った方法なので。

クッキーの使用方法 | JavaScript プログラミング解説

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;
}

枯れ切った方法なので、ビルトイン関数でcookieを細かくとることは出来ず、あとはプラグインだよりになるそうな。

そもそも、クッキーをJavaScriptで取ろうとするとdocument.cookieになる。で、document.cookieをconsole.logで取ると、こうなる。

console.log(document.cookie);
// PREF=ID=9ed35cf1eb49af94:U=4af7e72aad1c6cf2:FF=0:TM=1418736096:LM=1418739218:S=hmDvwY9gsXQS1_JB; data1=hoge; data2=fuga

だから、indexOfやらsubstringやらでごにょごにょするしかなくなるっぽい。