2017-02-20 114 views
0

我想從所有陣列數據製作一個動態URL。 現在我來到這個部分,我不知道如何解決這個問題。 你能幫忙嗎?JS - 從所有陣列數據製作動態URL(陣列長度不固定)

//Get image 
    function get_image(img_arg){ 

     var length = img_arg.length; 

     for (x = 0; x < length; x++){ 

      //I would like to make url like this: 
      //var url = img_arg[0] + '-' + img_arg[1] + '-' + img_arg[2]...till the max; 
     } 


     console.log(url); 
    } 

謝謝!

回答

1

在您的陣列上使用join()函數並通過-作爲參數。它將所有項目與傳遞的參數連接起來並返回一個字符串。

舉個例子,你可以看到

var img_arr = [1,2,3,4,5,6,7,8,9]; 
 
var arr = img_arr.join('-'); 
 

 
console.log(arr);

+0

謝謝你,這是我一直在尋找的答案。 –

1

只是增加一點點代碼:

//Get image 
function get_image(img_arg) { 
    var img_url = ""; 

    for(x=0; x<img_arg.length; x++) { 
     img_url += img_arg[x] + '-'; 
    } 

    img_url = img_url.substring(0, img_url.length-1); 
    console.log(img_url); 
} 
+0

如果我使用切片而不是丟失數組的第一個字母而不是最後一個。因此,我嘗試過這樣,它的工作原理:function get_image(img_arg){ \t \t \t console.log(img_arg); \t \t var img_url =「」; \t \t爲(X = 0; X

+0

是的,你是對的,改變了答案。 – SsJVasto

+0

@BotićDenis你的解決方案可行,但我個人而言,寧願「在最後修剪最後一個字符」,而不是「測試它是否是每次迭代中的最後一個項目」......在這種情況下,您正在評估'img_arg。長度'額外的條件,而不是隻有1個調用substring()... 如果您的img_arg有成千上萬的項目,它可能會導致瀏覽器緩慢。 – SsJVasto