在javascript中使用逗号分隔符更新querystring

在javascript中使用逗号分隔符更新querystring,javascript,query-string,Javascript,Query String,在“stackoverflow”中,我发现这样做很有效: function updateQueryStringParameter(uri, key, value) { var re = new RegExp("([?&])" + key + "=[^&#]*", "i"); if (re.test(uri)) { return uri.replace(re, '$1' + key + "=" + value); } else {

在“stackoverflow”中,我发现这样做很有效:

function updateQueryStringParameter(uri, key, value) {
    var re = new RegExp("([?&])" + key + "=[^&#]*", "i");
    if (re.test(uri)) {
        return uri.replace(re, '$1' + key + "=" + value);
    } else {
        var matchData = uri.match(/^([^#]*)(#.*)?$/);
        var separator = /\?/.test(uri) ? "&" : "?";    
        return matchData[0] + separator + key + "=" + value;
    }
}
function removeQueryStringParameter(uri, key, value){
    var re = new RegExp("([?&])" + key + "=.*?(&|$)", "i");
    var separator = uri.indexOf('?') !== -1 ? "&" : "?";
    if (uri.match(re)) {
        return uri.replace(re, '');
    }
}
它工作得很好,但我需要一些类似的东西,唯一的区别是值由逗号或任何分隔符连接。示例:

www.google.com?key=1,2,3,4而不是key=1&key=2


提前谢谢

这是我的脚本代码:

tjq('.servizio').click(function () {
        var servizio = tjq(this).data('id');
        var href = tjq(location).attr('href');
        if(tjq(this).parent().hasClass('active')){
            var url = removeQueryStringParameter(href, 'serv', encodeURIComponent(servizio));
            location.href = url;
        }else{
            var url = updateQueryStringParameter(href, 'serv', encodeURIComponent(servizio));
            location.href = href.url;
        }
    });
和html代码:

<a href="#" class="servizio" data-id="'.$filtroS['servizio'].'">'.$filtroS['servizio'].'<small>('.$filtroS['quanti'].')</small></a></li>';
”;

我正在创建搜索过滤器。

那么,您的输入是什么,代码应该生成什么输出?您能否在问题中共享示例输入和所需输出?