在Javascript中将数组转换为字符串

在Javascript中将数组转换为字符串,javascript,Javascript,我有一个多维数组,如下所示: 1 2 3 4 5 6 现在我需要将这个数组转换成一个字符串,如1,2,3;4,5,6 有人能建议怎么做吗?只需在数组上使用join方法即可 > [[1,2,3],[4,5,6]].join(';') '1,2,3;4,5,6' 很幸运,你不必考虑如何在内部列表中应用连接方法,因为默认情况下,列表是用逗号连接的。当列表强制为字符串时,默认情况下会使用逗号分隔项目。如果需要将数组序列化为字符串,然后反序列化以从字符串中获取数组,您可能需要查看JSON: 试试

我有一个多维数组,如下所示:

1 2 3

4 5 6

现在我需要将这个数组转换成一个字符串,如
1,2,3;4,5,6


有人能建议怎么做吗?

只需在数组上使用
join
方法即可

> [[1,2,3],[4,5,6]].join(';')
'1,2,3;4,5,6'

很幸运,你不必考虑如何在内部列表中应用连接方法,因为默认情况下,列表是用逗号连接的。当列表强制为字符串时,默认情况下会使用逗号分隔项目。

如果需要将数组序列化为字符串,然后反序列化以从字符串中获取数组,您可能需要查看
JSON

试试这个:

array.toString();
请参见此处以供参考:

  • 关于这种多维数组更好的方法,请参见乔的答案

    • 正如乔所提到的,
      join()不是递归的。
      但是,如果您自己处理递归,您应该获得所需的结果,尽管是以一种相当不雅观的方式

      var array = [[1,2,3],[5,6,7]];
          var result = [];
      
          array.forEach(
                   function(el){
                       result.push(
                            el.join(",")
                       );
                   });
      
          result.join(";");
      

      我已经解决了你的问题,但我不明白(a)你有什么,(b)你想如何转换它,以及(c)你已经尝试了什么。这里进一步澄清一下,join不是递归的。这实际上与调用[[1,2,3].toString(),[4,5,6].toString()].join(“:”)相同。对于给定的简单示例,这恰好起作用。但该数组不一致。行是动态的:(@jordancpaul,谢谢提醒:)编辑了答案以使其更清楚。它是多维数组,我需要使用分号分隔行乔的解决方案将为您的数组做此操作。。。如果需要处理更复杂的数组,应该给出1-2个示例,说明数组的外观以及结果的外观。