在for循环javascript中将数组插入到空数组中
insert array to empty array in for-loop javascript
我有一个空数组&想要在for循环中插入从mongodb查询返回的所有数组,但数据没有被推送到arr中
var arr = [];
categoryObj.find({is_deleted:false,ancestors: []}, function(err, data) {
if(data) {
for (i=0;i< data.length;i++) {
categoryObj.find({is_deleted:false}, function(err, result) {
if (result) {
arr[i].push(result);
}
})
}
}
console.log(arr);
}
任何帮助,不胜感激。
如果result不为空,那么一个简单的arr.push(result)应该执行该操作(不带[i])。否则,您应该通过在控制台中输出result来检查它是否没有返回任何内容。
var arr = [];
for (i=0;i< data.length;i++) {
categoryObj.find({is_deleted:false}, function(err, result) {
if (result) {
arr.push(result);
}
})
}
console.log(arr);
执行arr.push
而不是arr[i].push
。
如果您的数据是一个对象,则必须使用以下代码:
for(var key in data){
var value = data[key];
/* do something with your data, e.g. arr.push(value); */
}
如果你的数据是一个数组,你可以使用你的代码,但更改这行
arr[i].push(result);
至
arr.push(result);
try {
const data = await categoryObj.find({is_deleted:false,ancestors: []});
const arr = await Promise.all(data.map(async (item) => {
const children = await categoryObj.find({is_deleted:false, ancestors: {
$in: [item._id]
}});
return children;
});
console.log(arr);
} catch (e) {
console.log(e);
}
相关文章:
- 将数组中的值插入到表中
- 在数组中插入对象失败
- JavaScript-在不影响索引的情况下将元素插入数组
- 如何使用JQuery将值数组插入到数据库中
- 通过node-js脚本将文档数组插入mongodb中的数据库时出现问题
- 将 json_encode() 数组插入 javascript 函数
- 如何在 zend_form 中将数组插入 JavaScript
- 将 JavaScript 数组插入到 SQL 表中
- Javascript 数组插入
- 在for循环javascript中将数组插入到空数组中
- 将数组插入location.href
- 关于将javascript中的数组插入HTML中的段落元素的基本帮助
- 如何通过angular js将数组插入到node js web服务中
- AngularJS将数组插入指令中的字符串
- 通过javascript将php值的数组插入到select选项中
- 根据数组插入html
- 如何将哈希映射数组插入Redis?(Node.js)
- 高图表将数据从数组插入到折线图中
- JavaScript如何将数组插入到表中
- 在jquery/js中从数组插入元素到表