我有一个看起来像数组的字符串:"[918,919]"
。我想将其转换为数组,是否有比拆分并检查它是否为数字更简单的方法?谢谢。
我有一个看起来像数组的字符串:"[918,919]"
。我想将其转换为数组,是否有比拆分并检查它是否为数字更简单的方法?谢谢。
使用 JSON.parse
。
var myArray = JSON.parse("[918,919]");
str.split(",")
var temp = new Array();
temp = "[918,919]".slice( 1, -1).split(",");
for (a in temp ) {
temp[a] = parseInt(temp[a]);
}
如果你使用 JSON.parse
,字符串必须使用 " 而不是 ',否则代码将无法正常工作。
例如:
let my_safe_string = "['foo','bar',123]";
let myArray = JSON.parse(my_safe_string)
代码将会失败
Uncaught SyntaxError: Unexpected token ' in JSON at position 1
如果你使用“”而不是‘’,一切都会正常工作。
let my_safe_string = "["foo","bar",123]";
let myArray = JSON.parse(my_safe_string);
你有两种可能将字符串数组转换为数组:
my_safe_string.replace("'",'"');
,然后执行JSON.parse
例如:
let myArray = eval(my_safe_string );