我有来自AjaxRequest
的JSON代码,我希望它将对象拆分为字符串或数组,以便我操作数据。
这是我的JSON代码
[{
"intAccountId": 2733,
"strAccountId": "59250-2001",
"strDescription": "SOIL TEST & GPS SERVICE-WB",
"strNote": null,
"intAccountGroupId": 6,
"dblOpeningBalance": null,
"ysnIsUsed": false,
"intConcurrencyId": 1,
"intAccountUnitId": null,
"strComments": null,
"ysnActive": true,
"ysnSystem": false,
"strCashFlow": null,
"intAccountCategoryId": 47
}]
结果将是这样的。
"2733 59250-2001 SOIL TEST & GPS SERVICE-WB"
答案 0 :(得分:0)
从它的外观来看,我认为你不想使用JSON.stringify()
。
我不确定您的确切输出要求,但您可以在询问前搜索好。无论如何,假设您想在JavaScript中执行此操作,请执行以下操作。
让theResponse
成为代表数组的变量。
<强> 1。你需要一个仅由前3个键组成的字符串吗?
var requiredString = [theResponse[0].intAccountId,
theResponse[0].strAccountId,
theResponse[0].strDescription
].join(" ");
<强> 2。你需要一个由所有键组成的字符串吗?
var requiredString = [];
for(var key in theResponse[0]){
requiredString.push(theResponse[0][key]); //obviously there are better ways.
}
requiredString = requiredString.join(" ");
您如何处理null
值取决于您。可以在循环内,您可以检查theResponse[0][key]
是否为null
,如果为真,则按下&#34; NA&#34;代替。
编辑 - 保留指标
正如您所问,使用JSON.stringify
将您的对象转换为包含所有键和值的字符串。一点点后期处理甚至可以为您提供更好的结构。
示例强>
var theOtherString = JSON.stringify(theResponse[0]);
console.log(theOtherString); // your JSON string.
console.log(theOtherString.replace(/"/g,"").replace(/,/g, " ")); //post processed a little.
这可以根据您的需要永远持续下去。