Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将JSON对象拆分为批处理Node.js_Json_Node.js_Split - Fatal编程技术网

将JSON对象拆分为批处理Node.js

将JSON对象拆分为批处理Node.js,json,node.js,split,Json,Node.js,Split,在发布到数据存储层之前,我想使用Node.js应用程序将结果的JSON对象分解成更小的批。JSON对象的结构是 { "results": [ { "fieldA": "valueA", "fieldB": "valueB" }, { "fieldC": "valueC", "fieldD": "valueD" }, { "fieldE": "valueE", "fieldF":

在发布到数据存储层之前,我想使用Node.js应用程序将结果的JSON对象分解成更小的批。JSON对象的结构是

{
 "results": [
     {
      "fieldA": "valueA",
      "fieldB": "valueB"
     },
    {
      "fieldC": "valueC",
      "fieldD": "valueD"
     },
    {
      "fieldE": "valueE",
      "fieldF": "valueF"
     },
     ....and so on, repeating 1000s of times
]
}
结果数组可能包含1000个对象。我如何获取结果,并将其拆分为批次,每个结果数组包含不超过10个对象?然后我会分别调用REST来发布成批的结果。我希望JSON结构保持不变,但将结果拆分为每个结果数组10个对象的批处理


非常感谢,好的。例如,关于您的评论,这里是:

//The backslashes are just to escape the new lines
var resultsJson = '{\
   "results": [\
       {\
        "fieldA": "valueA",\
        "fieldB": "valueB"\
       },\
      {\
        "fieldC": "valueC",\
        "fieldD": "valueD"\
       },\
      {\
        "fieldE": "valueE",\
        "fieldF": "valueF"\
       }\
  ]\
}'

var resultsArr = JSON.parse(resultsJson).results;
var i,j,tempArr;
var chunk = 2; //The chunk size you want
for (i=0,j=resultsArr.length; i<j; i+=chunk) {
    tempArray = resultsArr.slice(i,i+chunk);
    // do whatever. for test uncomment next line
    //console.log(tempArray);
}
//反斜杠只是为了转义新行
var resultsJson={\
“结果”:[\
{\
“fieldA”:“valueA”\
“字段B”:“值B”\
},\
{\
“fieldC”:“valueC”\
“现场”:“有价值”\
},\
{\
“fieldE”:“valueE”\
“fieldF”:“valueF”\
}\
]\
}'
var resultsArr=JSON.parse(resultsJson).results;
变量i,j,tempArr;
var=2//您想要的块大小

对于(i=0,j=resultsArr.length;i)您不想对其进行JSON.parse,因为它会影响应用程序的性能?您能举个例子说明如何做到这一点吗?