转换由&分隔的变量字符串进入数组

时间:2013-08-23 21:10:12

标签: javascript

我想在有人登录我的Facebook应用程序后抓取网址中包含的变量。

例如:

// window.location = .../#access_token=CTTG4fT3ci...&expires_in=5298
hash = window.location.hash;
data = PARSE(hash);
console.log(data['access_token'] + ', ' + data['expires_in']);
// returns: CAAG4fT3ci..., 5298

是否有类似于JSON.parse()的方法或函数可以将“hash”转换为数组或对象?

1 个答案:

答案 0 :(得分:0)

function PARSE (hash) {
    var l, chunk, i = 0, out = {};
    var chunks = hash.substr(1).split('&');
    for ( l = chunks.length; i < l; i++ ) {
        chunk = chunks[i].split('=');
        out[ chunk[0] ] = chunk[1];
    }
    return out;
}

这里是小提琴:http://jsfiddle.net/VwLJS/