For循环加入&

时间:2019-03-18 02:28:57

标签: javascript arrays

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);
}

加入工作会得到这样的输出吗?

url1 =&url2 =&url3 =&url4 =&url5 =&url6 =

5 个答案:

答案 0 :(得分:2)

\Stripe\Stripe::setApiKey('sk_test_xxxx'); $charge = \Stripe\Charge::create([ "amount" => 888, "currency" => "USD", "customer" => "cus_xxxx", 'source' => 'tok_visa', ]); 是数组上的方法,但是join是字符串,而不是数组。

您应将字符串压入数组,然后在末尾调用urls

如果您希望他们拥有join,则也需要将其串联起来。

=

答案 1 :(得分:1)

这不是有效的查询字符串,但是您可以改用map

var joinArr = substr.map(n => "url" + n).join("=&") + "=";

答案 2 :(得分:0)

您可以加入索引值,并用特定的模式替换数字。

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);

答案 3 :(得分:0)

由于问题被标记为jQuery,因此您可以在简化的对象上使用$.param()

var substr = [1, 2, 3, 4, 5, 6];

var query = $.param(substr.reduce((a,c)=> (a['url' + c]='',a),{}))

console.log(query)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

答案 4 :(得分:0)

那......

var substr = [1, 2, 3, 4, 5, 6];
console.log('url'+substr.join('=&url')+'=');

//output:   url1=&url2=&url3=&url4=&url5=&url6=