Толкаем как два отдельных массива и объединяем в один - PullRequest
1 голос
/ 29 сентября 2019

Я перебираю массив объектов и выбираю некоторые конкретные, а затем помещаю их в новый массив. Однако, когда я пытаюсь напечатать этот новый массив, он печатает несколько массивов объектов, которые я выбрал! Как мне объединить эти несколько массивов в один и распечатать их как один массив объектов?

Вот мой код:

async getRestaurants() {
    if (this.state.city !== '') {
        firebase.firestore().collection('restaurants').get().then(querySnapshot => {
            const data = querySnapshot.docs.map(doc => doc.data());

            for (i = 0; i < data.length; i++) {
                if (data[i].rest_location == this.state.city) {

                    var newArr = [];
                    newArr.push(data[i]);
                    console.log("Selected city data:", newArr) 
                }
            }
        })
    }
}

Вот что он печатает:

 ▶︎ 'Selected city data:', [ { rest_location: 'Gjakove',
                         │ rest_phone: 123456789,
                         │ rest_name: 'Jeta',
                         └ res_id: 'jeta1' } ]

 ▶︎ 'Selected city data:', [ { rest_location: 'Gjakove',
                         │ rest_phone: 12345678,
                         │ rest_name: 'Potoku',
                         └ res_id: 'Potoku1' } ]

Как видите, два разных массива печатаются один за другим. Почему это происходит и что с этим делать?

...