[英]JavaScript convert String into Array Object
如何将字符串转换为数组 object。
我有字符串
让 colors = “[红,蓝,绿]”
并想转换为
字符串[] colors = [“红”、“蓝”、“绿”]
是否有可用于此转换的内置函数?
谢谢你调查它。
我会遵循@Jannes Carpentier 的方法-但要提供替代方法-您可以使用 slice 获取字符串的文本(非括号)部分,然后在 " ,
" 上拆分以获取文本项数组和然后将其重新分配给原始变量。
let colors = "[red, blue, green]" colors = colors.slice(1,-1).split(', '); console.log(colors); // gives ["red", "blue", "green"]
首先去掉括号
然后拆分", "
let colors = "[red, blue, green]" colors = colors.replace(/([\[\]])/g, ""); colors = colors.split(", "); console.log(colors);
除了替换所有[ ]
您还可以从字符串中删除第一个和最后一个字符
然后拆分", "
let colors = "[red, blue, green]" colors = colors.substring(1, colors.length - 1); colors = colors.split(", "); console.log(colors);
如果您的数据没有按照任何通用标准进行格式化,那么您不太可能找到预构建的数据解析器。 如果您可以控制输入字符串,最好将其格式化为 json 字符串,如下所示:'["red", "green", "blue"]' 然后您可以使用 JSON.parse( )。
其他两个答案对您的数据有非常令人满意的解析器,但是,我不想指望输入中是否存在空格。 解析器如
function customParse(data) {
return data
.substring(1, data.length -1)
.split(",", data)
.map(trim);
}
console.log(customParse("[red, blue,green]"));
无论空格如何,都可以使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.