如何在javascript中将字符串转换为对象数组

如何在javascript中将字符串转换为对象数组,javascript,arrays,string,object,iteration,Javascript,Arrays,String,Object,Iteration,我想将此字符串转换为对象数组 这是我的绳子 var a = 'SG 925|AMD-MAA|19:15|21:40|SG 703|VNS-BOM|19:45|22:05'; 我想这样转化 [ {'name':'SG 925','place':'AMD-MAA','from':'19:15','to':'21:40'} {'name':'SG 703','place':'VNS-BOM','from':'19:45','to':'22:05'} ] 这是我到目前为止所做的尝试 var a='

我想将此字符串转换为对象数组

这是我的绳子

var a = 'SG 925|AMD-MAA|19:15|21:40|SG 703|VNS-BOM|19:45|22:05';
我想这样转化

[
{'name':'SG 925','place':'AMD-MAA','from':'19:15','to':'21:40'}
{'name':'SG 703','place':'VNS-BOM','from':'19:45','to':'22:05'}
]
这是我到目前为止所做的尝试

var a='SG 925 | AMD-MAA | 19:15 | 21:40 | SG 703 | VNS-BOM | 19:45 | 22:05';
a=a.分割(“SG”);
a=a.filter(函数(e){returne});

控制台日志(a)如果您已经定义了exaclty键的样子,您可以使用类似的东西

var a='SG 925 | AMD-MAA | 19:15 | 21:40 | SG 703 | VNS-BOM | 19:45 | 22:05'
常数arr=a.split(“|”)
常量objArr=[]
对于(变量i=0;iconsole.log(objArr)
如果您已经详细定义了键的样子,那么您可以使用类似的东西

var a='SG 925 | AMD-MAA | 19:15 | 21:40 | SG 703 | VNS-BOM | 19:45 | 22:05'
常数arr=a.split(“|”)
常量objArr=[]
对于(变量i=0;i
试试这个:

函数转换(str){
var strArr=str.split(“|”);
var-objArr=[];
对于(VarI=0;i试试这个。)

函数转换(str){
var strArr=str.split(“|”);
var-objArr=[];

对于(var i=0;iDo名称总是以
SG
开头?是的,它总是以SG开头,所以我想进行字符串拆分以使其成为数组。问题是,拆分时删除
SG
名称总是以
SG
开头?是的,它总是以SG开头,所以我想进行字符串拆分以使其成为数组。问题是拆分时,您将删除
SG
var a = 'SG 925|AMD-MAA|19:15|21:40|SG 703|VNS-BOM|19:45|22:05';
a = a.split("|");
answer = [];
a.forEach(function(value, i) {
  if(i % 4 == 0) {
     answer.push({
       name: a[i],
       place: a[i + 1],
       from: a[i + 2],
       to: a[i + 3]
     })
  };
})
console.log(answer);