2016-06-10 21 views
0

我有一個JavaScript對象(或對象的數組?)的形式爲:的Javascript:對象的URL對象

[{"id":"1","col":"0.35","type":"1"},{"id":"2","col":"0.30","type":"1"},{"id":"11","col":"0.20","type":"0"}] 

我想變成一個URL,然後可以解析這個URL回當頁面加載時變成同樣的形式。我還想在重新創建對象之前將標題元素添加到URL的前面。因此,對於上述的URL可能看起來像:(我不需要按鍵的網址,可能會很長)

http://example.com/myURL.html?Page_Title&1,0.35,1&2,0.30,1&11,0.20,0

然後在頁面加載時我會刪除「PAGE_TITLE」,並重新 - 創建對象,在id:,col:和type:keys中加入。

該URL可能包含數十個{id,col,type}組。

我正在使用這個功能,但我似乎無法得到它的工作。我肯定這件事很簡單,我誤解或忽略了。在URL

function ArrayToURL(array,title) { 
    var pairs = []; 
    for (var key in array) 
    if (array.hasOwnProperty(key)) 
    pairs.push(encodeURIComponent(array[key])); 
    my_title=(encodeURIComponent(title)); 
    return ("http://example.com/myURL.html?")+my_title+'&'+pairs.join('&'); 
    } 
+1

爲什麼JSON數據? – Sami

+0

我將設置存儲在localStorage中。正在從存儲的localStorage字符串中解析URL,然後最終返回到那裏。那有意義嗎? – dijon

回答

1
function ArrayToURL(array,title) { 
var pairs = []; 
for (var key in array){ 

var obj = array[key]; 
var temp=''; 

for(var key in obj){ 
    temp+=obj[key]+","; 
} 

pairs.push(temp); 

} 

my_title=(encodeURIComponent(title)); 

return ("http://example.com/myURL.html?")+my_title+'&'+pairs.join('&'); 
} 
+0

這看起來比我的好多了。你能否告訴我如何將這個URL轉換回對象? – dijon