2014-09-23 66 views
-1

我有相同的數字的陣列[ 「1」, 「2」, 「3」]陣列加入並建立一個url

,我需要創建一個URL等

https://api.edmunds.com/v1/api/configurator/withOptions?zip=90045&styleid=200701689&deselected=1&deselected=2&deselected=3&fmt=json&api_key=xxxxxxxxxx

和我的陣列長度將從空變化到沒有任何長度,所以根據陣列長度i需要創建URL在上面的URL分配等

陣列值

&deselected=1&deselected=2&deselected=3 

使用jQuery我試圖映射方法再次給出了一個數組,我需要一個URL

+0

發佈您的地圖代碼。 – 2014-09-23 05:26:00

回答

2

您可以嘗試()類似

var array = [ "1", "2", "3" ]; 
 
var params = array.length ? '&selected=' + array.join('&selected=') : ''; 
 
result.innerHTML = params
<div id="result"></div>

使用Array.map

var array = [ "1", "2", "3" ]; 
 
var params = array.map(function(value){ 
 
    return '&deselected='+value 
 
}).join(''); 
 
result.innerHTML = params
<div id="result"></div>

+0

我假設他們使用PHP或類似的,所以不需要:&selected [] =? – Thomas 2014-09-23 05:28:22

+0

嘿,如果你不介意的話。你能解釋一下這條線的意思嗎? var params = array.length? '&selected ='+ array.join('&selected ='):''; – divakar 2014-09-23 05:29:04

+0

@divakar有什麼解釋?這是一個三元操作。 – melancia 2014-09-23 05:30:29

0

這也應該工作。

var url = "https://api.edmunds.com/v1/api/configurator/withOptions?zip=90045&styleid=200701689", array = ["1", "2", "3"]; 

if (array.length) { 
    var separator = "&deselected="; 
    var queryParams = separator + array.join(separator); 
    url = url + queryParams; 
}