How to make a for loop iterate through the additional element added to array from db result?

I have an array. I want to query a mysql database with each array element and on a certain condition fulfillment, I want to add additional elements to the same array and iterate through those elements as well.

I'm new to nodejs so I don't know if this is the right approach.

I have provided a code snippet that is a simplified version of my issue.

In below code snippet, I want to display "looks good" on console.

pre_req_subjects_arr = [2310,2320,2410];
for(let j=0;j<pre_req_subjects_arr.length;j++) {
    console.log("j is : "+j);
    db.query("SELECT `NUMBER` FROM `COURSE`",function(err,preOfPreReq) {
        if(err) {
            console.log("Error while creating array of pre_req subjects : " + err);
        } else {
            console.log("j inside db query : "+j);
            if(j==1) {
                pre_req_subjects_arr.push(1111);    
            }
            if(pre_req_subjects_arr[j] == 1111) {
                console.log("looks good");
            }
        }
    })                                        
}

setTimeout(function() {
console.log("pre_req_subjects_arr is " + JSON.stringify(pre_req_subjects_arr));
}, 1000);

Output:

j is : 0
j is : 1
j is : 2

j inside db query : 0
j inside db query : 1
j inside db query : 2

pre_req_subject_arr : [2310,2320,2410,1111]

Expected Output:

j is : 0
j is : 1
j is : 2
j is : 3

j inside db query : 0
j inside db query : 1
j inside db query : 2
j inside db query : 3

looks good
pre_req_subject_arr : [2310,2320,2410,1111]


#javascript #node-js #database

2 Likes4.60 GEEK