var substr = [1, 2, 3, 4, 5, 6];
for (var i = 0; i < substr.length; i++) {
var urls = 'url' + substr[i];
var joinArr = urls.join('&');
console.log("JoinArray", joinArr);
}
Will join work to get output like this?
url1=&url2=&url3=&url4=&url5=&url6=
5 Réponses :
Ce n'est pas une chaîne de requête valide, mais vous pouvez utiliser map à la place:
var joinArr = substr.map(n => "url" + n).join("=&") + "=";
join est une méthode sur des tableaux, mais urls est une chaîne, pas un tableau.
Vous devez pousser la chaîne sur un tableau et appeler rejoignez à la fin.
Et si vous voulez qu'ils aient = , vous devez également concaténer cela.
p>
var substr = [1, 2, 3, 4, 5, 6];
var urls = [];
for (var i = 0; i < substr.length; i++) {
urls.push('url' + substr[i] + '=');
}
var joinArr = urls.join('&');
console.log("JoinArray", joinArr);
Vous pouvez joindre les valeurs d'index et remplacer les nombres par le modèle spécifique.
var substr = [1, 2, 3, 4, 5, 6];
var str = substr.join('').replace(/[0-9]/g, (n) => `url${n}=&`).slice(0, -1);
console.log(str);
Puisque la question est balisée jQuery, vous pouvez utiliser $ .param () code > sur un objet réduit
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
var substr = [1, 2, 3, 4, 5, 6];
var query = $.param(substr.reduce((a,c)=> (a['url' + c]='',a),{}))
console.log(query)
Et ...
var substr = [1, 2, 3, 4, 5, 6];
console.log('url'+substr.join('=&url')+'=');
//output: url1=&url2=&url3=&url4=&url5=&url6=
?
joinest une opération de tableau.urlsest une chaîne, pas un tableau.Une chose que vous pouvez faire est à tout moment votre question est "Est-ce que cela fonctionnera?" consiste à exécuter le code et à voir ce qu'il vous donne.