I have an object in my Node.js route (result
), and I want to split that into two separate objects and return them both. However, sometimes the second object is returned empty and to fix that I want to make the function that splits it asynchronous. For some reason its not working though, what am I doing wrong? The function is separateResult()
.
EDIT: The problem seems to be in my createResponse(rows
) function. My SQL query always returns 6 rows but my createResponse(rows)
function sometimes returns an object with 5 key-value pairs instead of 6.
function createResponse(rows) {
var response = {}
var random = 0
for (let i = 0; i < 6; i ) {
var random = Math.floor(Math.random() * 101)
response[random] = rows[i].user_name
}
return response
}
CodePudding user response:
Because Math.random()
sometimes generates same result. This can be any time 4/10, 3/5 ... anytime. Think of finding another way of giving key names to your response. E.G. you are using a loop. So i
is always different. You can do response[rows[i].user_name i]
. Best practice would be using uuid
library