【问题标题】:Multidimensional arrays. Push and then join多维数组。推然后加入
【发布时间】:2013-05-28 11:01:41
【问题描述】:

假设我有以下内容,

var array1 = ["10", "11"],
    array2 = ["AAA", "BBB"],
    result = [];

for ( var i = 0; i < array1.length; i++ ) {
  result.push( [ array1[i], array2[i] ] );
}

alert(result);

我收到["10","AAA","11","BBB"]

如何合并join 函数或任何其他可以让我获得以下输出的函数:

["10_AAA","11_BBB"].

【问题讨论】:

  • 为什么不简单地result.push( array1[i] + '_' + array2[i] );
  • 谢谢!对我来说,这样的面部时刻......
  • 当你创建一个你推送的数组时,你的结果实际上是[["10", "AAA"], ["11", "BBB"]]而不是["10", "AAA", "11", "BBB"]

标签: javascript jquery arrays multidimensional-array


【解决方案1】:

您无法加入这些项目,因为它们位于不同的数组中。对于只有两个数组的示例,您可以连接字符串:

for ( var i = 0; i < array1.length; i++ ) {
  result.push( array1[i] + "_" + array2[i] );
}

可以使用连接,如果您从每个数组中的项目动态创建一个数组,如果您有两个以上的数组来连接来自以下的项目,那么该语法可能会更容易:

for ( var i = 0; i < array1.length; i++ ) {
  result.push( [ array1[i], array2[i] ].join("_") );
}

【讨论】:

  • 我不认为有这样的功能......似乎你必须连接值。
【解决方案2】:

这样试试

for ( var i = 0; i < array1.length; i++ ) {
  result.push(array1[i] + '_' + array2[i]);
}

【讨论】:

  • 如果您打印 $result ,请查看我的编辑一次将给出相同的结果....首先检查并否决它
【解决方案3】:

嗯,是的,你可以使用join,例如这样:

for ( var i = 0; i < array1.length; i++ ) {
  result.push( [ array1[i], array2[i] ].join('_' );
}

但为什么不简单地使用result.push( array1[i] + '_' + array2[i] ); 呢?

【讨论】:

    【解决方案4】:

    加入他们吧:

    result.push( [ array1[i], array2[i] ].join('_') );
    

    【讨论】:

      猜你喜欢
      • 2019-05-24
      • 1970-01-01
      • 2016-08-14
      • 1970-01-01
      • 2013-05-17
      • 2013-01-01
      • 1970-01-01
      • 2023-04-11
      • 2021-01-14
      相关资源
      最近更新 更多