The problem is that your last console.log line runs before anything else.

I don't see the rest of the code, but I suspect if you move your *return 
resolve(countRepetidos);* 2 lines up (right behind that *if(data.count>0) 
{}* block), your promise will resolve proper value.

Likewise, if you put the console log there, it's going to work.



On Saturday, July 22, 2017 at 3:50:01 AM UTC+2, Catia Matos wrote:
>
>
> 0down votefavorite 
> <https://stackoverflow.com/questions/45236919/outside-for-loop-var-value-is-undefined#>
>
> I'm facing a problem with a value where inside my for cycle it has values 
> like "179" and outside i get always undefined. Why?
>
> var countRepetidos;if(obj.data.list!={} && obj.data.list.length>0){    
>     var aux = obj.data["list"];
>     countRepetidos=0;
>     for(var i=0;i<aux.length;i++){                              
>        Database.Probing.getMacAdress(aux[i]).then(function(data){
>             if(data.count>0){
>                countRepetidos++;  
>                console.log("count repetidos 1",countRepetidos); // value 116
>             }                                   
>         });
>     }
>     return resolve(countRepetidos);}   
>
> console.log("count repetidos 2",countRepetidos);    // value undefined
>
> log :
>
> 3|wscontro | count repetidos 1 1163|wscontro | count repetidos 2 undefined
>
> I try instead of use resolve, use callback but nothing... I saw other 
> answers in javascript but for node.js I cant resolve this problem... I saw 
> the link refering thus question as a duplicate but cant figure out a 
> solution to this case.
>

-- 
Job board: http://jobs.nodejs.org/
New group rules: 
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to nodejs+unsubscr...@googlegroups.com.
To post to this group, send email to nodejs@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/bff3ffb3-40e5-4d86-97fa-61e7e7536df1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to