[英]How to Convert Array-like String to Array
我有一个看起来像一个数组的字符串: "[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 );
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.