Javascript:如何将字符串转换为对象数组
我有一个如下格式的字符串:Javascript:如何将字符串转换为对象数组,javascript,jquery,ecmascript-6,Javascript,Jquery,Ecmascript 6,我有一个如下格式的字符串: {"title":"XYZ","id":"123"} {"title":"NPS","id":"124"}{"title":"LMW","id":"125"} 我试图通过将其存储在变量中并按如下方式拆分,将其转换为数组: let
{"title":"XYZ","id":"123"} {"title":"NPS","id":"124"}{"title":"LMW","id":"125"}
我试图通过将其存储在变量中并按如下方式拆分,将其转换为数组:
let prodInfo = "{"title":"XYZ","id":"123"} {"title":"NPS","id":"124"}{"title":"LMW","id":"125"}";
然后,我将此变量拆分为:
let infoArry = prodInfo.split("}");
console.log(infoArry);
在这之后我得到的结果是:
问题是,当我循环通过这个数组分别访问标题时,我将其视为未定义
欢迎提出任何建议const input='{title:XYZ,id:123}{title:NPS,id:124}{title:LMW,id:125}';
const objects=input.split}.filterelement=>!!element.mapelement=>JSON.parseelement+};;
objects.forEachobject=>console.logobject[title];
常量输入=“{title:XYZ,id:123}{title:NPS,id:124}{title:LMW,id:125}”;
const objects=input.split}.filterelement=>!!element.mapelement=>JSON.parseelement+};;
objects.forEachobject=>console.logobject[title];
鉴于您在问题下的注释中声明您可以更改输入字符串格式,我强烈建议您将其转换为有效的JSON。然后,您可以简单地调用JSON.parse,并根据需要处理生成的数组。试试这个: var输入=“[{title:XYZ,id:123},{title:NPS,id:124},{title:LMW,id:125}]”; var output=JSON.parseinput;
output.forEachobj=>console.logobj.title;//举个例子如果您在问题下的注释中声明您可以更改输入字符串格式,我强烈建议您将其转换为有效的JSON。然后,您可以简单地调用JSON.parse,并根据需要处理生成的数组。试试这个: var输入=“[{title:XYZ,id:123},{title:NPS,id:124},{title:LMW,id:125}]”; var output=JSON.parseinput;
output.forEachobj=>console.logobj.title;//举个例子,你能控制输入字符串吗?如果你做了一些修改,它就可以变成有效的JSON,可以在一次对JSON的调用中解析。parseYes我可以更改字符串格式,@Rosence你可以更改它,将它更改为:[{title:XYZ,id:123},{title:NPS,id:124},{title:LMW,id:125}]然后您就可以使用JSON.parsestrDo控制输入字符串了吗?如果你做了一些修改,它就可以变成有效的JSON,可以在一次对JSON的调用中解析。parseYes我可以更改字符串格式,@Rosence你可以更改它,将它更改为:[{title:XYZ,id:123},{title:NPS,id:124},{title:LMW,id:125}],然后你就可以使用JSON.parsestr了