我有以下代码,如果result[1]
的长度为1,则如下所示:
var url = redir[0] + 'value=' + encoURL + '& + result[1];
现在我有一个方案,当结果具有更多的条目3或5时,我需要将其连接到字符串,这是一种很好的方法来代替这种丑陋的方法
var url = redir[0] + 'value=' + encoURL + '& + result[1] + '& + result[2] + '& + result[3]
等等。
我有使用破折号和下划线...
最佳答案
从您的示例看来,您似乎希望将所有结果附加到该值(以“&”号分隔)之间。如果那是您想要的,那么它将满足您的需求...
// get a copy of result, with the first element removed...
var newResult = result.slice(1);
var url = redir[0] + 'value=' + encoURL + (newResult.length ? "&" : "") + newResult.join("&");
join
将连接所有newResult
的值,并以“&”号分隔。如果
(newResult.length ? "&" : "")
中有任何值,newResult
基本上会添加第一个与号,因此它可以解决newResult
为空的可能性。您也可以将连接放入该条件运算符中,但是我这样做是因为它更具可读性,并且对最终结果没有影响。我创建了
newResult
,因此您仍然可以保留原始结果数组,以防日后需要时使用它。关于javascript - 串联字符串节点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32350598/