首页 > 解决方案 > 使用 Javascript 将字符串拆分为 JS 对象或 JSON 对象

问题描述

我想从一个字符串中创建一个 JavaScript 对象或 Json,用;分隔。. 所以我可以在;处拆分字符串 之后,我必须在:处拆分以创建变量名和变量值。但是我该怎么做呢?

字符串:

"MT"[1]:"111";"Medium"[1]:"AAA";"Medium"[2]:"BBB";"Medium"[3]:"CCC";"Medium"[4]:"DDD";"bar"[1]:"24";"bar"[2]:"1,5";"bar"[3]:"3";"bar"[4]:"7,5";"S_Id"[1]:"555";"S_Nr"[1]:"666"

结果必须如下所示:

MT[1] = “111”
Medium[1] = “AAA”
Medium[2]=”BBB” 
Medium[3]=”BBB” 
Medium[4]=”BBB” 
bar[1]=“24“
…

目标是使用索引和变量值访问变量。

谢谢你的帮助!

标签: javascript

解决方案


尝试这个

var x = '"MT"[1]:"111";"Medium"[1]:"AAA";"Medium"[2]:"BBB";"Medium"[3]:"CCC";"Medium"[4]:"DDD";"bar"[1]:"24";"bar"[2]:"1,5";"bar"[3]:"3";"bar"[4]:"7,5";"S_Id"[1]:"555";"S_Nr"[1]:"666"';

var obj = {};

var y = x.split(';');

y.forEach(function(itm){
  var z = itm.split(':');
   var key = z[0].split('[')[0].replace(/"/g, '');
  if(!obj.hasOwnProperty(key)) {
    obj[key] = [];
  }
  obj[key].push(z[1].replace(/"/g, ''));
})

console.log(obj)


推荐阅读