首页 > 解决方案 > 你如何将json数组分成两个arr?并通过firestore清空[]

问题描述

我有一个由firestore firesotre 加入的json数组

我的代码

   let query_chart =db.collection('collection').doc('date')

   let chart_data_json =[];
   query_chart.get().then(doc=>{

    if (!doc.exists) {
        console.log('No such document!');
      } else {
        console.log('Document data:', doc.data().time);
        const time = doc.data().time;
        Object.keys(time).map(hour=>{
            const count = time[hour];
            chart_data_json.push({
                hour : hour,
                count: count
            })
        })
        console.log(chart_data_json);

      }
})

let hour=[];
let time=[];

我的控制台记录了这个

[]
0: {hour: "12", count: 0}
1: {hour: "13", count: 0}
2: {hour: "14", count: 0}
3: {hour: "15", count: 1}
4: {hour: "16", count: 0}
5: {hour: "17", count: 0}
6: {hour: "18", count: 0}
length: 7
__proto__: Array(0)

我使用代码来访问该数组。

console.log("array",chart_data_json);

但控制台打印

"array"undefined

对象中的空 [] 是什么?

您如何处理它并将其分为两个数组“小时”和“时间”?

标签: javascriptgoogle-cloud-firestore

解决方案


在这里你说你有一个 json 数组。假设“时间”有数组,运行 Object.keys(time) 会给你一个索引数组。[0,1,2,3]。您需要在 Array (time) 上进行迭代,然后您可以在循环中运行地图。


推荐阅读