将字符串转换为数组

时间:2016-08-16 22:53:32

标签: javascript arrays string split

我需要转换此字符串:

'"apple","banana","yellow peach","orange"'

到一个数组:

["apple","banana","yellow peach","orange"]

1 个答案:

答案 0 :(得分:1)

编辑:

使用JSON.parse()的Squint解决方案适用于此示例,但是,如果字符串中有嵌套引号,JSON.parse()将会出错。例如:

var str = '"apple","banana","yellow peach","orange", "Dwayne "The Rock" Johnson"';

您必须了解您的数据可能会是什么样子。可能存在需要内部引用的情况,因此您不能使用引号的全局替换,也不能使用JSON.parse(),您需要执行以下操作:



var str = '"apple","banana","yellow peach","orange", "Dwayne "The Rock" Johnson"';
var arr = str.split(",").map(function (elem) {
  return elem.trim().replace(/^"|"$/g, ''); // regex courtesy of torazaburo =)
});
console.log(arr);