【问题标题】:JS - make dynamic url from all array data (array length is not fixed)JS - 从所有数组数据中生成动态 url(数组长度不固定)
【发布时间】:2017-02-20 19:52:41
【问题描述】:

我正在尝试从所有数组数据中创建一个动态 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);
    }

谢谢!

【问题讨论】:

    标签: javascript arrays loops dynamic-url


    【解决方案1】:

    在您的数组上使用join() 函数并将- 作为参数传递。它使用传递的参数连接所有项目并返回一个字符串。

    作为一个例子你可以看到

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

    【讨论】:

    • 谢谢,这就是我正在寻找的答案。
    【解决方案2】:

    只需在您的代码中添加一点:

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

    【讨论】:

    • 如果我使用切片,我会丢失数组的第一个字母而不是最后一个。因此我尝试过这样并且它有效: function get_image(img_arg) { console.log(img_arg); var img_url = ""; for(x=0; x
    • @BotićDenis 您的解决方案有效,但就个人而言,我宁愿“修剪最后一个字符”而不是“测试它是否是每次迭代的最后一个项目”......在这种情况下,您正在评估 img_arg.length 额外条件,而不是仅调用 1 次 substring()... 如果您的 img_arg 有数千个项目,则可能会导致浏览器运行缓慢。
    • 我明白了,你是对的。我也需要这个例子,谢谢你解释这个。
    猜你喜欢
    • 1970-01-01
    • 2020-03-11
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    • 2020-08-31
    • 1970-01-01
    • 2021-09-07
    相关资源
    最近更新 更多