Javascript forEach似乎什么也没做

时间:2018-11-18 02:36:13

标签: javascript

我的JavaScript页面fb.js看起来像这样

    $(document.ready( function() {
        var results = [];

        console.log(roomArray);
        // get rooms from database
        roomArray.forEach( function(room){
           console.log('here');
             var roomLocation = room['location'].replace(/\s/g,'').toLowerCase();
             var filterLocation = filters[0]['location'].replace(/\s/g,'').toLowerCase(); 
             if( roomLocation === filterLocation){
                 console.log('match found');
                 results.push(room);
             }
        });
    // some more code here
   });

在另一个js文件中定义了roomArray

       var roomArray = [];
       const rooms = firebase.database().ref().child('availableRooms');
       rooms.on('value', snap => {
          snap.forEach(function(child){
             roomArray[parseInt(child.key)] = child.val();
          });
       }); 

我遇到的一个问题是我的roomArray.forEach函数似乎什么都没做。

console.log(roomArray)可以正常工作,并显示我的阵列已正确填充,但是console.log('here')从未到达,并且结果也从未正确更新。

如果我直接在chrome控制台上运行代码,则效果很好。可能是什么问题呢?

0 个答案:

没有答案