Javascript 从json字符串中提取某些列和行

Javascript 从json字符串中提取某些列和行,javascript,json,node.js,Javascript,Json,Node.js,我从服务器上得到了类似这样的JSON响应 { id:1, 文本:'Name City Country\nJohn\n Chicago\nIllinois\nAlbert\nHouston\nTexas' } 如果我使用console.log(response.text);输出是这样的表格形式 现在,我只需要名称列和行,输出应该如下所示 建议我解决这个问题。由于该值是一个字符串,因此仅提取所需的列会遇到很多麻烦使用trim和split来获取名称City和Country文本。 const obj

我从服务器上得到了类似这样的JSON响应

{ id:1, 文本:'Name City Country\nJohn\n Chicago\nIllinois\nAlbert\nHouston\nTexas' }

如果我使用console.log(response.text);输出是这样的表格形式

现在,我只需要名称列和行,输出应该如下所示


建议我解决这个问题。由于该值是一个字符串,因此仅提取所需的列会遇到很多麻烦

使用trim和split来获取名称City和Country文本。
const obj={id:1,text:'Name City Country\nJohn\n Chicago\nIllinois\nAlbert\nHouston\nTexas'}

console.log(obj.text.split(“\n”)[0].trim().split(“”)您可以使用任何javascript csv解析器将文本解析为csv并访问特定列


Ref:

我还没有测试过这个,但是类似的东西应该可以工作:

var jsonData = "{ id : 1, text : 'Name City Country \nJohn \n Chicago \nIllinois \nAlbert \nHouston \nTexas ' }";

var obj1 = jsonData.split('\n');

for(var i= 1; i<obj1.length-2; i=i+3) 
{
  console.log("Name: " +obj1[i]+", City: "+obj1[i + 1]+", Country: " +obj1[i + 2]);

}
var jsonData=“{id:1,文本:'Name City Country\nJohn\n Chicago\nIllinois\nAlbert\nHouston\nTexas'}”;
var obj1=jsonData.split('\n');

对于(var i=1;我能解释一下为什么我们用i=1代替i=0,用obj1.length-2代替obj1.length吗?