[英]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.