我有以下代码,如果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/

10-10 12:46