在Javascript中将数组转换为字符串
我有一个多维数组,如下所示: 1 2 3 4 5 6 现在我需要将这个数组转换成一个字符串,如在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
有人能建议怎么做吗?只需在数组上使用
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个示例,说明数组的外观以及结果的外观。