如何将String转为数组,并去掉Javascript中的引号?
How to convert String to array, and remove quotation marks in Javascript?
我想将以下字符串转换为数组:
str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
array = new Array (str);
当我这样做时:
console.log(数组);
它给了我:
[" ['GHR', 15, 14 ], ['GHR', 12, 20 ] "],
但我想要不带引号的结果,例如:
[['GHR', 15, 14 ], ['GHR', 12, 20 ]]
请问如何只去掉数组开头和结尾的第一个和最后一个引号?
我正在使用此方法从 mongodatabse 获取数据,然后将结果转换为 google 图表可以在 Metero 平台
中读取的行
您可以使用 JSON.parse 这将要求您换掉单引号
var str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
var arr = JSON.parse("[" + str.replace(/'/g,'"') + "]");
或者您可以使用新函数
var str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
var arr = (new Function( "return [" + str + "]")());
或者获取输出它的任何内容以创建一个数组开始或使其有效JSON以便它可以被正确解析。
试试下面
var str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
str = str.replace(/\s+/g, ' ');
var arr = str.split('],').join(']|').split('|');
console.log(arr);
Fiddle: http://jsfiddle.net/zo3yvqbL/1/
我想将以下字符串转换为数组:
str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
array = new Array (str);
当我这样做时: console.log(数组);
它给了我: [" ['GHR', 15, 14 ], ['GHR', 12, 20 ] "],
但我想要不带引号的结果,例如:
[['GHR', 15, 14 ], ['GHR', 12, 20 ]]
请问如何只去掉数组开头和结尾的第一个和最后一个引号? 我正在使用此方法从 mongodatabse 获取数据,然后将结果转换为 google 图表可以在 Metero 平台
中读取的行您可以使用 JSON.parse 这将要求您换掉单引号
var str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
var arr = JSON.parse("[" + str.replace(/'/g,'"') + "]");
或者您可以使用新函数
var str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
var arr = (new Function( "return [" + str + "]")());
或者获取输出它的任何内容以创建一个数组开始或使其有效JSON以便它可以被正确解析。
试试下面
var str = " ['GHR', 15, 14 ], ['GHR', 12, 20 ] ";
str = str.replace(/\s+/g, ' ');
var arr = str.split('],').join(']|').split('|');
console.log(arr);
Fiddle: http://jsfiddle.net/zo3yvqbL/1/