str = "["1,2,3"]";
arr = str.replace('[','').replce(']','').split(',');
1的结果变成了,"" 1"?如何将上面的字符串转换为正确的数组?
答案 0 :(得分:0)
错误:
str
无效字符串。使用适当的引用通过前面的\
replce
应为replace
(错过a
)match()
与regex
一起从字符串中提取数字。
str = "['1,2,3']";
arr = str.match(/\d+/g);
document.write(arr);
console.log(arr);

答案 1 :(得分:0)
首先,你的第一行有错误,应该是
str = "[\"1,2,3\"]";
或
str = '["1,2,3"]';
只需使用 match()
,\d+
匹配字符串中的数字元素并返回匹配元素的数组即可。
str = '["1,2,3"]';
console.log(str.match(/\d+/g));

replace()
和 split()
["
"]
和replace(/\["|"\]/g,'')
split(',')
str = '["1,2,3"]';
console.log(str.replace(/\["|"\]/g,'').split(','));

答案 2 :(得分:0)
首先你的String有多个引号,更正它:
str = "[1,2,3]";
或
str = "["+"1,2,3"+"]";
然后使用:
arr = str.replace('[','').replce(']','').split(',');
现在,
arr [0]将包含1
arr [1]将包含2
arr [2]将包含3个