2015-05-17 14 views
6

mam kod:zagubiony return array # mapie javascript

function func1(){ 
    return 
    array.map(function(el){ 
     return el.method(); 
    }); 
} 

function func2(){ 
    var confused = 
    array.map(function(el){ 
     return el.method(); 
    }); 
    return confused; 
} 

Dlaczego func1 powrotną undefined podczas func2 powrót dobry stosunek (które trzeba)?

Przepraszamy za mój angielski.

+0

Automatyczne wstawianie średnika. – Bergi

Odpowiedz

11

Wewnętrznie w JS silnik pierwszym przykładzie wygląda to tak,

function func1() { 
    return; 
    array.map(function(el){ 
     return el.method(); 
    }); 
}; 

dlatego masz undefined, nie należy dodawać nową linię po return, ponieważ return następuje nowej linii opowiada intepreter JS że Po tym powrocie należy wstawić średnik.

function func1() { 
    return array.map(function(el){ 
    return el.method(); 
    }); 
};