将来自 FOR 循环的结果存储为一个数组(数组仅单独保存每个结果)
Storing result from FOR loop as one array (array only saves each results separately)
我尝试过搜索,但找不到任何帮助,也许我的问题太简单了!无论如何,我正在运行一个 ajax 请求。提供给请求的数据是一个数组。这是我的代码:
var id = "1#2#3#4#5#";
var chkdId = id.slice(0, -1);
var arr = chkdId.split('#');
var checkedId = '';
var chkdLen = arr.length;
for (var i = 0; i < chkdLen; i++) {
checkedId = arr[i];
var checkedId = checkedId;
var data = {};
var year = $('#year').val();
data["year"] = year;
data['type'] = "report";
data['accidentId'] = checkedId;
console.log(data);
ajax.readData('/report/readreport', data, null,
function (result) {
console.log(result);
},
function (error) {
alert('err ' + error);
}
);
}
请求数组:
Object {year:"2015" type: "report", accidentId: "1"}
Object {year:"2015" type: "report", accidentId: "2"}
Object {year:"2015" type: "report", accidentId: "3"}
Object {year:"2015" type: "report", accidentId: "4"}
Object {year:"2015" type: "report", accidentId: "5"}
结果:
{"data":[{"name":aaaa,"age":"15"}]}
{"data":[{"name":bbb,"age":"25"}]}
{"data":[{"name":ccc,"age":"65"}]}
{"data":[{"name":ddd,"age":"45"}]}
{"data":[{"name":eee,"age":"24"}]}
如何将结果存储在单个数组中?
这是我
的解决方案
var id = "1#2#3#4#5#";
var chkdId = id.slice(0, -1);
console.log(chkdId);
var arr = chkdId.split('#');
var checkedId = '';
var chkdLen = arr.length;
// here is the array
var arrayWithResults = [];
for (var i = 0; i < chkdLen; i++) {
checkedId = arr[i];
var checkedId = checkedId;
var data = {};
var year = $('#year').val();
data["year"] = year;
data['type'] = "report";
data['accidentId'] = checkedId;
console.log(data);
ajax.readData('/report/readreport', data, null,
function (result) {
console.log(result);
// here you push in the requested data
arrayWithResults.push(result);
},
function (error) {
alert('err ' + error);
}
);
}
把ajax
从for
中取出。这将仅向服务器发送一个 ajax 请求,并最大限度地减少服务器上的负载。
var params = [];
for (var i = 0; i < chkdLen; i++) {
checkedId = arr[i];
var data = {};
var year = $('#year').val();
data["year"] = year;
data['type'] = "report";
data['accidentId'] = checkedId;
params.push(data);
// ^^^^^^^^^^^^^^
}
ajax.readData('/report/readreport', params, null,
// ^^^^^^
function (result) {
console.log(result);
},
function (error) {
alert('err ' + error);
}
);
相关文章:
- knex:根据结果创建数组的合适方法是什么
- Mongodb$in以与数组中相同的顺序获取结果
- 使用ScriptObjectMirror将数组结果从JavaScript转换为有用的东西
- 从重复的javascript数组结果集中只获取一行
- 如何从合并的结果集中提取数组
- JSON返回数组的奇怪结果
- JavaScript-将for循环的多个结果推送到数组中
- 从source-mirth检索通道目标中的数组结果
- json_encode 的 mysqli 查询奇怪的数组结果
- 茉莉花期望不匹配数组结果
- 用promise处理promise的数组结果
- 根据id表将单个数组结果发送到打印机
- 如何获得Javascript数组结果到Java
- 显示输入文本的数组结果
- Javascript删除数组结果留下一个逗号
- 如何推翻数组结果树从子-父到父-子在Javascript
- 将数组结果过滤到下拉列表中
- Javascript数组结果返回undefined
- Javascript:标记数组结果
- 如何将数组结果视为数组Javascript