从javascript数组中删除逗号
大家好,我正在用javascript构建一个带有查询字符串的url,如下所示:一切正常,但查询字符串之间有一个逗号,有人能帮我吗从javascript数组中删除逗号,javascript,Javascript,大家好,我正在用javascript构建一个带有查询字符串的url,如下所示:一切正常,但查询字符串之间有一个逗号,有人能帮我吗 <script type="text/javascript"> function RedirectLocation() { var cntrl = "Q1;Q2"; var str_array = cntrl.split(';'); var cnt = str_array.length;
<script type="text/javascript">
function RedirectLocation() {
var cntrl = "Q1;Q2";
var str_array = cntrl.split(';');
var cnt = str_array.length;
if (cnt == 0) {
location.href = '/callBack.aspx';
}
else {
var arr = [];
for (var i = 0; i < str_array.length; i++) {
str_array[i] = str_array[i].replace(/^\s*/, "").replace(/\s*$/, "");
arr.push(str_array[i] + '=1');
if (i != str_array.length - 1) {
arr.push('&');
}
}
location.href = '/Sample.aspx?' + arr;
}
}
</script>
函数重定向位置(){
var cntrl=“Q1;Q2”;
var str_array=cntrl.split(“;”);
var cnt=str_array.length;
如果(cnt==0){
location.href='/callBack.aspx';
}
否则{
var-arr=[];
对于(var i=0;i
这给了我如下的查询字符串
Sample.aspx?Q1=1,&,Q2=1
我需要这样的字符串`Sample.aspx?Q1=1&Q2=1
从字符串中删除逗号
s = s.replace(/,/g,'');
但在您的特定情况下,您不希望添加逗号。改变
location.href = '/Sample.aspx?' + arr;
到
将数组添加到字符串会调用该数组上的toString
,该函数会添加逗号:
“”+[“a”,“b”]
给出了“a,b”
不依赖隐式字符串转换(以逗号作为分隔符连接数组元素),显式使用&
表示数组元素:
var arr = [];
for (var i = 0; i < str_array.length; i++) {
str_array[i] = str_array[i].replace(/^\s*/, "").replace(/\s*$/, "");
arr.push(str_array[i] + '=1');
}
location.href = '/Sample.aspx?' + arr.join('&');
var arr=[];
对于(var i=0;i
请这样想:您有一组name=value
条目,您希望它们之间用&
分隔。您可以使用arr.join(glue)
将数组元素与它们之间的某个元素连接起来。在您的情况下,glue将是一个空字符串arr.join(“”
+1我没有检查您的代码(我非常信任您),但在数组中按“&”并不是最好的解决方案。
var arr = [];
for (var i = 0; i < str_array.length; i++) {
str_array[i] = str_array[i].replace(/^\s*/, "").replace(/\s*$/, "");
arr.push(str_array[i] + '=1');
}
location.href = '/Sample.aspx?' + arr.join('&');